当前位置:  开发笔记 > 编程语言 > 正文

Python什么代码约定将参数拆分成行?

如何解决《Python什么代码约定将参数拆分成行?》经验,为你挑选了1个好方法。

将参数分成行的惯例是什么?是否有PEP对此进行制裁?我没有在PEP8中找到它.

file_like = f(self,
              path,
              mode=mode,
              buffering=buffering,
              encoding=encoding,
              errors=errors,
              newline=newline,
              line_buffering=line_buffering,
              **kwargs)

aneroid.. 6

当(B)最大线长度超过时,使用(A)垂直对准,有时即使不超过 - 以获得更好的可读性.

这些是该页面上的前3个示例,说明了它:

是:

# Aligned with opening delimiter.
foo = long_function_name(var_one, var_two,
                         var_three, var_four)

# More indentation included to distinguish this from the rest.
def long_function_name(
        var_one, var_two, var_three,
        var_four):
    print(var_one)

# Hanging indents should add a level.
foo = long_function_name(
    var_one, var_two,
    var_three, var_four)

你问过的那个上面第一个例子变体,为了清晰起见,每行只有一个arg.

没有:

# Arguments on first line forbidden when not using vertical alignment.
foo = long_function_name(var_one, var_two,
    var_three, var_four)

并且(C),完成了名称给定的参数(关键字参数),这样您就不需要查询被调用函数中的参数.通常,每个非显而易见的参数都可以作为关键字参数传递,这些参数可以作为被调用函数的核心功能的标志或修饰符.例如:

> read_file('abc.txt', 1024, True)  # yes, you know 'abc.txt' is the filename
> # What are the 1024 and True for?
> # versus...
> read_file('abc.txt', max_lines=1024, output_as_list=True)  # now you know what it does.

PS:@falsetru的回答并没有错.最大行长度是重新格式化代码的第一个原因.至于以这种方式对齐的具体原因,那就是垂直对齐.



1> aneroid..:

当(B)最大线长度超过时,使用(A)垂直对准,有时即使不超过 - 以获得更好的可读性.

这些是该页面上的前3个示例,说明了它:

是:

# Aligned with opening delimiter.
foo = long_function_name(var_one, var_two,
                         var_three, var_four)

# More indentation included to distinguish this from the rest.
def long_function_name(
        var_one, var_two, var_three,
        var_four):
    print(var_one)

# Hanging indents should add a level.
foo = long_function_name(
    var_one, var_two,
    var_three, var_four)

你问过的那个上面第一个例子变体,为了清晰起见,每行只有一个arg.

没有:

# Arguments on first line forbidden when not using vertical alignment.
foo = long_function_name(var_one, var_two,
    var_three, var_four)

并且(C),完成了名称给定的参数(关键字参数),这样您就不需要查询被调用函数中的参数.通常,每个非显而易见的参数都可以作为关键字参数传递,这些参数可以作为被调用函数的核心功能的标志或修饰符.例如:

> read_file('abc.txt', 1024, True)  # yes, you know 'abc.txt' is the filename
> # What are the 1024 and True for?
> # versus...
> read_file('abc.txt', max_lines=1024, output_as_list=True)  # now you know what it does.

PS:@falsetru的回答并没有错.最大行长度是重新格式化代码的第一个原因.至于以这种方式对齐的具体原因,那就是垂直对齐.

推荐阅读
贾志军
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有