欢迎来到天天文库
浏览记录
ID:44912154
大小:880.41 KB
页数:23页
时间:2019-11-04
《python编码规范》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、登录注册社区招聘头条问答翻译Python代码规范3周前⋅9478⋅21⋅2前言Python学习之旅,先来看看Python的代码规范,让自己先有个意识,而且在往后的学习中慢慢养成习惯目录CreatePDFinyourapplicationswiththePdfcrowdHTMLtoPDFAPIPDFCROWD一、简明概述CreatePDFinyourapplicationswiththePdfcrowdHTMLtoPDFAPIPDFCROWD1、编码如无特殊情况,文件一律使用UTF-8编码如无特殊情况,文件头部必须加入#-*-coding:utf-8-
2、*-标识2、代码格式2.1、缩进统一使用4个空格进行缩进2.2、行宽每行代码尽量不超过80个字符(在特殊情况下可以略微超过80,但最长不得超过120)理由:这在查看side-by-side的diff时很有帮助方便在控制台下查看代码太长可能是设计有缺陷2.3、引号简单说,自然语言使用双引号,机器标示使用单引号,因此代码里多数应该使用单引号CreatePDFinyourapplicationswiththePdfcrowdHTMLtoPDFAPIPDFCROWD自然语言使用双引号"..."例如错误信息;很多情况还是unicode,使用u"你 界"机器标识使用单引号
3、'...'例如dict里的key正则表达式使用原生的双引号r"..."文档字符串(docstring)使用三个双引号"""......"""2.4、空行模块级函数和类定义之间空两行;类成员函数之间空一行;classA:def__init__(self):passdefhello(self):passdefmain():passCreatePDFinyourapplicationswiththePdfcrowdHTMLtoPDFAPIPDFCROWD可以使用多个空行分隔多组相关的函数函数中可以使用空行分隔出逻辑相关的代码2.5、编码文件使用UTF-8编码文件头部加
4、入#-*-conding:utf-8-*-标识3、import语句import语句应该分行书写#正 的 importosimportsys#不 的 importsys,os#正 的 fromsubprocessimportPopen,PIPEimport语句应该使用absoluteimportCreatePDFinyourapplicationswiththePdfcrowdHTMLtoPDFAPIPDFCROWD#正 的 fromfoo.barimportBar#不 的 from..barimportBarimport语句应该放在文件头部,置于模
5、块说明及docstring之后,于全局变量之前;import语句应该按照顺序排列,每组之间用一个空行分隔importosimportsysimportmsgpackimportzmqimportfoo导入其他模块的类定义时,可以使用相对导入frommyclassimportMyClass如果发生命名冲突,则可使用命名空间CreatePDFinyourapplicationswiththePdfcrowdHTMLtoPDFAPIPDFCROWDimportbarimportfoo.barbar.Bar()foo.bar.Bar()4、空格在二元运算符两边各空一格[
6、=,-,+=,==,>,in,isnot,and]:#正 的 i=i+1submitted+=1x=x*2-1hypot2=x*x+y*yc=(a+b)*(a-b)#不 的 i=i+1submitted+=1x=x*2-1hypot2=x*x+y*yc=(a+b)*(a-b)CreatePDFinyourapplicationswiththePdfcrowdHTMLtoPDFAPIPDFCROWD函数的参数列表中,,之后要有空格#正 的 defcomplex(real,imag):pass#不 的 defcomplex(real,imag):pass
7、函数的参数列表中,默认值等号两边不要添加空格#正 的 defcomplex(real,imag=0.0):pass#不 的 defcomplex(real,imag=0.0):pass左括号之后,右括号之前不要加多余的空格CreatePDFinyourapplicationswiththePdfcrowdHTMLtoPDFAPIPDFCROWD#正 的 spam(ham[1],{eggs:2})#不 的 spam(ham[1],{eggs:2})字典对象的左括号之前不要多余的空格#正 的 dict['key']=list[index]#不 的
8、dict['key']=
此文档下载收益归作者所有