1
Leviathann 2023-04-14 23:43:02 +08:00
清晰,git 友好
|
2
huangsen365 2023-04-14 23:45:01 +08:00 via Android 1
因为对眼球的运动轨迹也更友好
|
3
insmoin 2023-04-15 00:05:17 +08:00
git 友好
|
4
Alias4ck 2023-04-15 03:27:53 +08:00 4
在 Python 中,确实可以在一行中导入多个包,但许多 IDE 和代码格式化工具(如 PEP 8 、Black 、autopep8 等)会将它们自动展开到多行。这样做主要有以下好处:
1.可读性:将每个导入语句放在单独的一行可以提高代码的可读性,使其他开发人员更容易理解和跟踪你的代码。当有多个导入时,长的一行代码可能不容易看清楚每个导入。 2.维护:在单独的一行上列出每个导入包,有助于代码的维护。当需要添加、删除或修改导入时,单行导入使得更改更加明确,减少了出错的可能性。 3.代码审查和版本控制:将导入语句拆分到多行可以简化代码审查和版本控制。当有多个导入在同一行时,对其中一个导入的更改可能导致整行被标记为已修改,这可能会使得审查变得更加困难。 4.遵循编码规范:PEP 8 是 Python 编程语言的一种编码规范,它建议将每个导入语句放在单独的一行。遵循这些规范有助于编写整洁、一致的代码,这对于团队协作尤为重要。 总之,尽管在一行中导入多个包是可行的,但将每个导入分开到单独的一行可以提高代码的可读性、可维护性,并遵循编码规范。因此,许多 IDE 和代码格式化工具会自动将导入语句拆分到多行 gpt-4 的回复确实很符合事实, 虽然我也用 isort 来处理包的导入, 主要原因是可读性和规范, 剩余两个点它描述的也很不错 涨姿势了 |
5
wu67 2023-04-15 08:31:16 +08:00
对 git 友好. 如果你哪天改一个了一个 import, 就知道到底是改了哪个, 而不是一整行都被标识改了, 要一个个去对比到底改了哪个
|
6
l4ever 2023-04-15 08:40:20 +08:00 1
OP 你好, 我这里是强迫症治疗中心的.
|
7
LaurelHarmon 2023-04-15 09:11:20 +08:00 3
有些贴 GPT 的以为别人没手还是咋
|
8
dayeye2006199 2023-04-15 09:38:24 +08:00 via Android
风格问题,一般也不用操心 isort 之类的可以帮你重新排序和组合成你要的 import 风格
|
9
skinny 2023-04-15 10:03:44 +08:00
因为你没有设置这些 IDE 用的格式化工具的最大行长,或者是以逗号结尾
|
10
e3c78a97e0f8 2023-04-15 10:45:09 +08:00 via iPhone
@Alias4ck 你的这个答案我看第一段就猜到是 GPT 生成的。看来 AI 和人类的语言还是有差别。
|
11
Alias4ck 2023-04-15 10:56:33 +08:00 14
@LaurelHarmon 贴 gpt 生成 下面我没回复我自己的观点? 我只是探讨我的知识边界 有问题? 现在 v2 上讨论问题的人戾气都这么重吗
|
12
lolizeppelin 2023-04-15 11:06:39 +08:00
import 本身的顺序是有影响的,比如一些被 import 的模块包含了初始化代码
一行多个 import 你会忽略顺序问题,也不好找最初始 import 的位置 |
15
jKpzPv20NjX56i44 2023-04-15 11:48:14 +08:00
@vopin 他这种还行吧...又不是纯 bot 。还是有输出自己观点的。
|
16
noahhhh 2023-04-15 11:52:02 +08:00 via Android
@LaurelHarmon gpt-4 要钱
|
17
LaurelHarmon 2023-04-15 11:53:41 +08:00
@noahhhh 门槛好高啊
|
18
mingli 2023-04-15 11:55:19 +08:00 via iPhone
我也觉得 4 楼没什么问题,人又不是单纯的复制粘贴
|
19
fox0001 2023-04-15 12:18:15 +08:00
其实,可以问问 ChatGPT
|
20
locoz 2023-04-15 14:57:00 +08:00
@LaurelHarmon #7 事实还确实就如此,有些人就是“没手”,“有手”就不会就这种问题问人了...且不提月经问题直接搜索能得到一堆同样的答案,在当下 AI 已经具备合格的语言能力时,这种常规月经问题直接让 AI 给答案就是最优解,效率高、内容整理完善、准确度也毫无问题。
|
21
LaurelHarmon 2023-04-15 15:24:53 +08:00
@locoz 嗯嗯,我感觉这种问题直接忽视即可,没啥讨论价值。二话不说直接贴 AI 回复最后在一个角落里说两句无关痛痒上的话(甚至不如全贴 GPT )也很没意思,给社区增加垃圾。
|
22
Alias4ck 2023-04-15 16:02:36 +08:00 3
@LaurelHarmon 我觉得吧 兄弟你是不是戾气有点重啊
1: 这个 tag 是在 python 下的吧 是分享和讨论 python 技术的吧 不是用来批判人的吧 只是针对技术的吧 我也没看到你提出你的观点 关于这个 ide 的特性啊 2: 另外你是谁啊 就动不动上升到讨论价值 社区垃圾? 圣人? 首先别人可能是新人,了解一些 feature 不够及时, 给他们解答 我觉得在这个 tag 下很合理啊 3: 其次 chatgpt 给的答案很全面 用来做参考有什么问题 你也可以指出它的错误 它本身就是一个辅助工具, 别动不动就 diss , 用来查漏补缺很合理啊 技术讨论不就是要百花齐放吗 |
23
Ocean810975 2023-04-15 19:16:07 +08:00
@Alias4ck #22
当时社区讨论的不让用 chatGPT 还是因为可以创造某些看上去十分真实的虚假消息吧。而且我个人觉得 chatgpt 信息密度有的时候很低,尤其是他在做总结的时候,总共就四条的东西还总结一遍。 也不是非不让用,我觉得自己用挺好的,给别人看就有点灌水的嫌疑了,或许换个 prompt 语气不那么 GPT 会好一些。 |
24
mekingname 2023-04-15 22:20:13 +08:00
因为这些 IDE 是按照 Python 代码规范 PEP-8 的要求来格式化代码的。其中就说到了,对于模块级别,应该一行一个来导入。
import re import datetime import pandas as pd 对于同一个模块下面的多个不同函数、类、变量,则允许在一行导入: from re import findall, search, sub |
26
lonccc 2023-04-16 09:07:20 +08:00 via iPhone
@LaurelHarmon 你的 3 个不痛不痒的回复就不是为社区添加垃圾吗
|
27
uni 2023-04-16 14:03:00 +08:00
印象中用 yapf 就可以在同一行
|
28
maichael 2023-04-16 18:40:32 +08:00
@Alias4ck #4 https://www.v2ex.com/about 提醒一下,有可能会被站长 BAN 的
|
29
kaddusabagei38 2023-04-17 09:49:08 +08:00
> 为什么很多 IDE 的 format 都会把我写在一行的自动展开?
这个东西一般都是可以配置的。 |
30
hhhhhh123 2023-04-20 11:47:05 +08:00
import 多个记得加个(). 方便换行
import (a, ,b ,c d, e) |