如何编写高质量的Pythonic风格代码

每一种语言都有它的编程风格,打个比方就像各种菜系,粤菜,川菜,淮扬菜每一种都有自己的独特风格.Python的开发者用Pythonic这个词来形容那种符合python风格的代码.这种pythonic风格的代码,既不是非常严格的规范,也不是编辑器强加给开发者的规则,它是大家在python语言的过程中指定的一种指南,一种协同工作过逐渐形成的习惯.宗旨就是直观,简洁而容易读.

1,避免只使用大小写来区分不同的对象
比如a是一个数值类型的变量,而A是String类型,虽然在编码的过程中容易区分二者的含义,但是没有啥用,它不会给其他阅读代码的人带来多少便利.

2,避免使用容易混淆的名称
不要用内建的函数名来表示其他含义的名称,没有构建新的数据类型的情况下使用类似element,list,dict等作为变量名.不要使用o(字符O的小写,很容易以为是数值0),长的太像了,1(字母L的小写,也和数值1容易混淆),
变量名最好和你要解决的问题联系起来.

3.不要害怕过长的变量名
有的时候为了让程序更容易理解和阅读,长一点的变量名是必须的,有的同学说长的变量名要敲好多次,怎么办,没有关系.现在很多编辑器都有代码自动提示,这都不是事.
比如下面的 person_info比pi的可读性要强很多:

person_info={'name':'zhang san','IDCard':'200123','address':'Num 100,Xihu Road'}

4.多看看源码,学习别人的优秀代码风格
照猫画虎是一个比较快的学习过程.特别是业界比较公认的Pythonic代码,比如web框架里面比较有名的Flask或者requests,蛮经典的是一个比较好的理解pythonic风格代码的精髓.

5.利用一个神器,比如PEP8
这是一个关于Python编码风格的指南,全称叫"Python Enhancement Proposal #8" 它列出了很多细节包含了一些对代码的布局,注释,命名的要求,
(如果对PEP8有兴趣的同学可以留言,我会单独开个章节讲一下PEP8里面的变量,函数,参数,类,模块和包)。若你能遵守这些原则,就很容易些出pythonic的代码。

需要先下载一个 pep8 ,敲pip install -U pep8。
然后用它来检测一些自己的代码 ,就一目了然了.

$ pep8 --first MyPython.py
MyPython.py:1:36: E231 missing whitespace after ','
MyPython.py:31:6: E225 missing whitespace around operator
MyPython.py:118:80: E501 line too long (85 > 79 characters)
MyPython.py:120:1: W191 indentation contains tabs
MyPython.py:123:38: W291 trailing whitespace
MyPython.py:141:42: E203 whitespace before ':'
MyPython.py:144:57: E202 whitespace before ')'
MyPython.py:150:1: E303 too many blank lines (5)
MyPython.py:306:35: W292 no newline at end of file

猜你喜欢

转载自blog.51cto.com/15009341/2553631