我相信PEP8样式指南指出
some_kind_of_list = [
1, 2, 3,
4, 5, 6
]
def function_that_takes_long_arguments(
long_argument_1,
long_argument_2
):
return long_argument_1
和
some_kind_of_list = [
1, 2, 3,
4, 5, 6
]
def function_that_takes_long_arguments(
long_argument_1,
long_argument_2
):
return long_argument_1
是可以接受的,但是使用其中一种是有意义的,例如,如果我一生中后来改用C ++的话?
编辑
抱歉,对于一个功能,PEP8样式指南实际上说像:
something = function_that_takes_long_arguments(
long_argument_1,
long_argument_2
)
尝试不要为此而失去睡眠。 做对您来说更清晰的事情。
pep8 python样式指南检查器认为两个片段都不可接受。
第一种选择:
$ pep8 test_pep.py
test_pep.py:10:5: E125 continuation line with same indent as next logical line
第二种选择(无警告):
$ pep8 test_pep.py
$
如您所见,对于列表,可以同时使用两者。但是对于功能而言,第二种方法是首选的,因为在第一个代码段中,功能主体缩进为前一行,并且对可读性产生了负面影响。
我通常会用
some_kind_of_list = [
1, 2, 3,
4, 5, 6,
]
def function_that_takes_long_arguments(
long_argument_1,
long_argument_2,
):
return long_argument_1
这种方式的缩进将是可区分的。在最后一个参数的末尾加上逗号也可以在以后添加新的args,而无需更改其他行,这对于git责备目的通常是一件好事,并且可以减少差异。
我并不特别在意这种样式,我只是检查了一下,它不在PEP 8中,它可能会干扰任何给定的IDE折叠代码块的能力(与我在Python中使用的代码块一样):
def function_that_takes_long_arguments(
long_argument_1,
long_argument_2
):
return long_argument_1
我希望您避免使用它,而是执行以下操作:
def function_that_takes_long_arguments(
long_argument_1,
long_argument_2):
return long_argument_1
要么
def function_that_takes_long_arguments(long_argument_1,
long_argument_2):
return long_argument_1
不过,无论哪种方式,列表样式都可能很好。