Python之禅

PEP8风格指南-必须遵守的规则

1.空白

1.使用空格来缩进,不要用tab

2.和语法相关的每一层缩进使用4个空格

3.每行字符数不应超过79

4.对于占据了多行的长表达式,首行后换行后的每一行都应在通常缩进级别上再加4个空格

5.函数与类之间用两个空行隔开

6.同类中的方法之间用一个空行隔开

7.赋值时赋值号左右两侧各有且只有一个空格

8.使用下标、调用函数或给参数赋值时,不要在两旁添加空格

2.命名

1.函数、变量及属性用小写,各单词之间用下划线相连,例如lowercase_underscore

2.受保护的实例名,以单下划线开头,如:_leading_underscore

3.私有的实例属性,以两个下划线开头,如:__double_leading_underscore

4.类与异常以每个单词首字母均大写形式:CapitalizedWord

5.模块级别的常量全用大写字母,各单词以下划线相连:ALL_CAPS

3.表达式和语句

1.采用内联形式的否定词,if a is not b,而不是if not a is b

2.检测对象a是否为空值([]或’’),不要试图检测长度,而应该使用if a 或 if not a 判断,空值是F,if 空值 = if F,if not 空值= if T

a=[]
if not a:
  print(‘a is null’)
else:
  print(‘1’)

3.复合语句应分多行书写

4.import语句放在文件开头

?5.引入包内模块时使用绝对名称(从哪个包里引入),不要使用相对名称。比如引入bar包中的foo模块时,应完整写出:from bar import foo,而不是简写为:import foo(可能涉及搜索路径的效率问题)。如果一定要用相对名称,则采用明确写法:from . import foo

6.import语句应该按顺序划分为三部分:标准库模块、第三方模块、自用模块,每部分中按模块字母顺序排列

Pylint(www.pylint.org)是Python源码静态分析工具,检查代码是否符合PEP8风格指南,还能找出常见错误

Python之禅

import this

The Zen of Python, by Tim Peters

Beautiful is better than ugly.
Explicit is better than implicit.
Simple is better than complex.
Complex is better than complicated.
Flat is better than nested.
Sparse is better than dense.
Readability counts.
Special cases aren’t special enough to break the rules.
Although practicality beats purity.
Errors should never pass silently.
Unless explicitly silenced.
In the face of ambiguity, refuse the temptation to guess.
There should be one-- and preferably only one --obvious way to do it.
Although that way may not be obvious at first unless you’re Dutch.
Now is better than never.
Although never is often better than right now.
If the implementation is hard to explain, it’s a bad idea.
If the implementation is easy to explain, it may be a good idea.
Namespaces are one honking great idea – let’s do more of those!
提姆·彼得斯(Tim Peters)撰写的《 Python之禅》

美丽胜于丑陋。
显式胜于隐式。
简单胜于复杂。
复杂胜于复杂。
扁平比嵌套更好。
稀疏胜于密集。
可读性很重要。
特殊情况还不足以打破规则。
尽管实用性胜过纯度。
错误绝不能默默传递。
除非明确地保持沉默。
面对模棱两可的想法,拒绝猜测的诱惑。
应该有一种-最好只有一种-显而易见的方法。
尽管除非您是荷兰人,否则一开始这种方式可能并不明显。
现在总比没有好。
尽管从来没有比现在“正确”好。
如果实现难以解释,那是个坏主意。
如果实现易于解释,则可能是个好主意。
命名空间是一个很棒的主意-让我们做更多这些吧!

  • 6
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 82
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 82
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值