v2 的诸位,你们写 Python 的时候会在 if 语句加上圆括号吗?

2019-06-05 10:50:48 +08:00
 datou
前阵子将某个 sdk 的 py2.7 版本修改成 py3 的

发现 if 语句全部加了圆括号

v2 的各位会在 if 语句加上圆括号吗?
11290 次点击
所在节点    Python
47 条回复
shm7
2019-06-05 12:34:31 +08:00
您放屁会脱裤子吗?
xiaojie668329
2019-06-05 13:06:36 +08:00
不会,Pycharm 告诉我这是多余的,我就删掉了。
NSAgold
2019-06-05 13:11:15 +08:00
不会。复杂的话为了阅读方便会再写注释。
keepeye
2019-06-05 13:13:19 +08:00
有时候搞不清楚运算符优先级,就局部括号
omph
2019-06-05 13:45:14 +08:00
啥时候能淘汰掉方括号,输入真难受
pmispig
2019-06-05 14:37:25 +08:00
会,单条件也会加,看着舒服有安全感
weyou
2019-06-05 14:47:10 +08:00
不会整体加括号,多条件也只是单个条件加
abcdabcd987
2019-06-05 15:01:06 +08:00
对于长 if 和长表达式,加括号就可以很自然地换行了,不用在最后打 \
我觉得在这样的情况下加括号其实还蛮好的,比起\我更喜欢括号
PEP 8 做了示范:
https://www.python.org/dev/peps/pep-0008/#multiline-if-statements
https://www.python.org/dev/peps/pep-0008/#should-a-line-break-before-or-after-a-binary-operator
aaronhua
2019-06-05 15:16:54 +08:00
一些运算的优先级不是很明显的时候会加上,没事不会加。
kiwier
2019-06-05 15:19:32 +08:00
不用 py,缩进太坑
freakxx
2019-06-05 15:21:28 +08:00
PEP8 不支持这种做法吧?

如果 if 判断太长的话,拆成多个再 if 拼接
abcdabcd987
2019-06-05 15:42:51 +08:00
@freakxx #31 "The preferred way of wrapping long lines is by using Python's implied line continuation inside parentheses, brackets and braces. Long lines can be broken over multiple lines by wrapping expressions in parentheses. These should be used in preference to using a backslash for line continuation."
https://www.python.org/dev/peps/pep-0008/#maximum-line-length
freakxx
2019-06-05 15:51:41 +08:00
exceloo
2019-06-05 15:55:11 +08:00
会的,工作用 js,习惯改不了,还要经常在 python 里面写 var
popbayun
2019-06-05 15:59:39 +08:00
你是从哪个语言转过来的
firejoke
2019-06-05 16:12:03 +08:00
比如:
```python
_partiton = disk.getFirstPartition()
while _partiton:
if (_partiton.type == parted.PARTITION_FREESPACE
and _partiton.path == partition['path']
and _partiton.busy == partition['busy']
and abs(
_partiton.getSize(unit="GB") -
float(partition['size'])
) <= 0.001
and _partiton.active == partition['active']
and _partiton.geometry.start == partition['geometry_start']
and _partiton.geometry.end == partition['geometry_end']):
break
_partiton = _partiton.nextPartition()
```
firejoke
2019-06-05 16:13:43 +08:00
@firejoke 为了不用 \
xsiong
2019-06-05 16:23:18 +08:00
为什么要加?我 java 转过来的都不想加
Macolor21
2019-06-05 16:40:00 +08:00
Macolor21
2019-06-05 16:40:43 +08:00
@xsiong 不小心发出去了,java 转 python 后具体负责什么呢🤔

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/571032

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX