PEP8-Python编程规范

程序代码是用来读的, 提高代码可读性需要掌握PEP8代码规范

这需要坚持一致性考虑

1 关于空格

  缩进使用4空格

  括号换行时, 有三种范例可以遵守

# 对准左括号
foo = long_function_name(var_one, var_two,
                         var_three, var_four)

# 不对准左括号,但加多一层缩进,以和后面内容区别。
def long_function_name(
        var_one, var_two, var_three,
        var_four):
    print(var_one)

# 悬挂缩进必须加多一层缩进.
foo = long_function_name(
    var_one, var_two,
    var_three, var_four)

  右括号回退

# 右括号回退
my_list = [
    1, 2, 3,
    4, 5, 6,
]
result = some_function_that_takes_arguments(
    'a', 'b', 'c',
    'd', 'e', 'f',
)

  一行最多72个字符, 超过之后需要换行

  括号与括号内容之间不应该有空格

# 括号里边避免空格
# 推荐
spam(ham[1], {eggs: 2})
# 不推荐
spam( ham[ 1 ], { eggs: 2 } )

  逗号, 冒号, 分号分割数据的时候应该紧跟左边的内容, 与右边内容之间加一个空格

# 逗号,冒号,分号之前避免空格
# Yes
if x == 4: print x, y; x, y = y, x
# No
if x == 4 : print x , y ; x , y = y , x

  索引的冒号之间不应搞有空格

  二元运算符, =, +=, -=, ... and, or等前后有要有空格

  +. -前后要有空格, *, / 前后不应该有空格

  函数定义的参数列表, 每个参数之间用逗号分隔, 前面不加空格, 后面加空格

  函数定义的参数列表中的默认参数的=前后不应该有空格

  类似if/else等后面加冒号后面跟程序块的, 不要和if/else写在一行

  注释#后面加一个空格

2 关于换行

  在类中, 类名和第一个函数间隔2行

  在类中, 类中的函数之间间隔1行

3 关于导入

  单独的import后面最好是单个

  from..import可以不是单个

  推荐是用绝对路径导入, 不推荐使用相对路径导入

  尽量避免通配符导入, 如尽量少使用*

4 关于命名

  模块名全部使用小写字母, 使用下划线来增加可读性

  包的命名和模块差不多, 但是包最好不要用下划线

  类名, 首字母大写, 采用驼峰写法

  函数名, 全部使用小写字母

  全局变量, 全部是用大写字母, 可以使用下划线来增加可读性

  私有变量, 变量名字前面加上一个下划线

  特殊变量. 变量名字前后都加上两个下划线

人若有恒 无所不成
原文地址:https://www.cnblogs.com/weihuchao/p/6827039.html