编写高质量的Pythonic风格代码

来自公众号: DeveloperPython

我知道有些新人肯定不了解Pythonic是什么,也许在某些论坛看到过这个词语。其实,它的意思很简单。这是Python的开发者用来表示代码风格的名词。它是在Python开发过程中指定的一种指南,一种习惯。宗旨是

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<!--more-->
### 1、不用害怕长变量名
长一点的变量名,有时候是为了让程序更容易理解和阅读。并且,有的编辑器已经支持自动提示,所以不用太担心敲键盘太多的烦恼。
比如: user_info 就是比 ui 的可读性高很多:
user_info = {'name':'xiyouMc','age':'保密','address':'Hangzhou'}
### 2、避免使用容易混淆的名称
尽量不要使用 ```内建``` 的函数名来表示其他含义的名称。比如 list、dict等。不要使用 o(字符O的小写,很容易被当做数字0),1(字母 L 的小写,也容易和数字 1 混淆)
其次,变量名最好和你要解决的问题联系起来。
### 3、尽量不要使用大小写来区分不同的对象
比如 b是一个树脂类型的变量,但 A 是 String 类型,虽然在编码过程中容易区分这两者的含义,但是没啥卵用,它并不会给其他阅读代码的人带来福利。反而,带来的呕吐的感觉。
### 4、其次,最重要的一点是,多看源码,学习别人的风格
Github 上有数不胜数的优秀代码,比如web框架里面有名的Flask、Requests,还有爬虫界的Scrapy,这些都是经典中的经典,并且都是比较好的理解pythonic代码风格精髓的例子。
### 5、最后,你实在是懒得不想关注这些,只想写代码,那么。。。
我推荐一个神器,在你写完代码之后,执行这个神器就可以看到检测代码风格后的结果。
```PEP8```,全称,"Python Enhancement Proposal #8",它列举除了很多对代码的布局、注释、命名的要求。
pip install -U pep8 #来安装 pep8z
然后用它来检测代码:
```python
➜ /Users/xiyoumc >pep8 --first pornHubSpider.py
pornHubSpider.py:1:1: E265 block comment should start with '# '
pornHubSpider.py:19:43: E124 closing bracket does not match visual indentation
pornHubSpider.py:22:16: E251 unexpected spaces around keyword / parameter equals
pornHubSpider.py:53:5: E301 expected 1 blank line, found 0
pornHubSpider.py:71:22: W503 line break before binary operator

同时,如果对pep8感兴趣的话,可以留言,我可以开个系列来讲解 PEP8里面的变量、函数、类、木块和包,这样就会更加容易的理解Pythonic风格。

最后,如若我写的对大家有点帮助,那么关注公众号 DeveloperPython,你将会收到关于Python技术第一时间的推送


长摁‘识别二维码’,一起进步

生活不止眼前的苟且,还有手下的代码、

和嘴上的扯淡
——
个人博客: http://xiyoumc.0x2048.com/

Github:https://www.github.com/xiyouMc


点击 Join,加入Python技术成长圈子,我在这里等着你。