使用方法调用格式化 Python 中的多行
Formatting multiple lines in Python with method calls
Python 中可接受的样式是什么来格式化多行方法调用代码?
my_obj.call(x,y).multiple(*args).methods([1,2,3])
在 brackets/parentheses 之后使用隐式换行符,它看起来像这样:
my_obj.call(
x, y).multiple(
*args).methods(
[1,2,3])
有点丑,不符合典型的 Python 风格。
是否可以使用反斜杠格式化多个方法调用\
?
my_obj.call(x, y) \
.multiple(*args) \
.methods([1,2,3])
如果可以接受,那么在方法调用之后的行中使用两个空格是否也可以接受,还是应该没有缩进?
我会这样格式化:
my_obj.call(
x, y
).multiple(
*args
).methods(
[1, 2, 3]
)
或使用\
:
my_obj.call(x, y) \
.multiple(*args) \
.methods([1, 2, 3])
缩进与块缩进相同,通常为4个空格。
尾随 \
的替代方法是使用括号:
(my_obj.call(x, y)
.multiple(*args)
.methods([1,2,3]))
pep8 方式是
temp_obj = my_obj.call(x,y)
temp_obj = temp_obj.multiple(*args)
temp_obj.methods([1,2,3])
或者如果第一行适合一行,即 < 79
个字符。
temp_obj = my_obj.call(x,y).multiple(*args)
temp_obj.methods([1,2,3])
Python 中可接受的样式是什么来格式化多行方法调用代码?
my_obj.call(x,y).multiple(*args).methods([1,2,3])
在 brackets/parentheses 之后使用隐式换行符,它看起来像这样:
my_obj.call(
x, y).multiple(
*args).methods(
[1,2,3])
有点丑,不符合典型的 Python 风格。
是否可以使用反斜杠格式化多个方法调用
\
?my_obj.call(x, y) \ .multiple(*args) \ .methods([1,2,3])
如果可以接受,那么在方法调用之后的行中使用两个空格是否也可以接受,还是应该没有缩进?
我会这样格式化:
my_obj.call(
x, y
).multiple(
*args
).methods(
[1, 2, 3]
)
或使用\
:
my_obj.call(x, y) \
.multiple(*args) \
.methods([1, 2, 3])
缩进与块缩进相同,通常为4个空格。
尾随 \
的替代方法是使用括号:
(my_obj.call(x, y)
.multiple(*args)
.methods([1,2,3]))
pep8 方式是
temp_obj = my_obj.call(x,y)
temp_obj = temp_obj.multiple(*args)
temp_obj.methods([1,2,3])
或者如果第一行适合一行,即 < 79
个字符。
temp_obj = my_obj.call(x,y).multiple(*args)
temp_obj.methods([1,2,3])