前言python
本文的文字及图片来源于网络,仅供学习、交流使用,不具备任何商业用途,版权归原做者全部,若有问题请及时联系咱们以做处理。
做者:yangjiajia123456 web
最近两年的工做都是和运维相关,有时运维人员也会写一些python程序,但基本上都没有遵循相应的代码规范,一贯粗暴,能用就行,既不考虑可读性也不考虑可维护性,做为一个开发人员有时候看他们写代码就很不舒服,今天就谈谈python写代码时的一些规范。若是你刚学python.不久遇到问题多,建议能够来小编的Python交流.裙 :一久武其而而流一思(数字的谐音)转换下能够找到了,里面有最新Python教程项目可拿,不懂的问题多跟里面的人交流,都会解决哦!编程
1.命名网络
函数、变量及属性都应该用小写单词拼写,只见用_链接,不遵循驼峰命名法
类与异常应该首字母大写,不要用_链接
受保护的实例属性,应以单下划线开头
实例的私有属性,应以上下划线开头
模块级别的变量单词都要大写,中间以单下划线隔开
变量要尽量有意义
2.空白多线程
和语法相关的每一层缩进都用4个空格表示
赋值时等号两边都要有一个空格
每一行所占用的字符数应不超过79,实际操做中应当尽可能不让代码编辑器的行滚动条显示出来
在使用函数进行函数式编程时,函数之间要空两行
在类中的函数,函数之间应该空一行
函数与类是同一个级别,则他们之间应该空两行
对于超出每行规定的字符数的长表达式,应当敲回车缩进,一般除了首行其他各行都要在原来的基础上再次缩进4个空格
3.语句并发
判断变量是否为None、False或True时不要用==,要用is,例如,if a is None
import语句应放在句首,导入时要尽可能使用绝对导入不要使用相对导入,而且导入时最好指定相应的模块的某一具体功能,例如,from datetime import datetime
模块导入时应根据标准库模块、第三方模块以及自用模块进行分类
检测容器不为空时,应使用if 容器名,例如,lists = [] if lists
采用内联形式的否认词,不要把否认词放在整个表达式的前面,例如,应该if a is not None 而不是 if not a is None
4.注释运维
对某些重要的代码块的功能说明,应使用单行注释
对整个模块功能的说明应使用多行注释
对类或函数的功能及使用方法的详细说明应使用文档字符串
python的注释尽可能使用英文
5.并发编辑器
I/O密集型,像web应用这样的场景应该使用多线程编程
计算密集型,像计算圆周率等场景应该使用多进程编程,尽量利用多核CPU优点
固然在编写代码时你的某些编辑器如pycharm会帮助你检测代码规范,只要认真遵循通常不会出什么问题。咱们编写代码不只是要实现某种功能,就尽管它是核心,可是你的代码在之后极有可能会交给别人去维护,因此你写的代码应当尽量地让人看懂,避免给别人留坑。
——总结,以上五条基本规划是很是核心的,但愿你们遵照养成良好的习惯,若是你刚学python.不久,遇到问题多,建议能够来小编的Python交流.裙 :一久武其而而流一思(数字的谐音)转换下能够找到了,里面有最新Python教程项目可拿,不懂的问题多跟里面的人交流,都会解决哦!函数式编程