1.代码布局设计

1.1 缩进 -4个空格进行缩进

1.2 tab键-在python2中tab和空格是混用的,但是在python中基本上使用tab(pycharm开发工具会自动对代码缩进)

1.3 最大行长度-行的最大长度是79个字符

1.4 反斜杠-反斜杠在有的时候是适用的,例如在参数很长,但是不能隐式的使用多行的时候,如下反斜杠的使用:

  1. with open('/path/to/some/file/you/want/to/read') as file_1, \
  2. open('/path/to/some/file/being/written', 'w') as file_2:
  3. file_2.write(file_1.read())

1.5 空行 -Top level函数和类的定义的时候,空两行。类中方法的定义空一行。

1.6 源文件编码 -

在源文件中一直使用utf-8编码,在python2中使用ascll编码

文件,在python2中使用ascll编码,在python3中使用utf-8编码

1.7 导入 - 如 import os,import time 经理单行导入

2.避免使用空格的情况

2.1 - 在小括号,中括号,大括号中避免使用空格

  1. Yes: spam(ham[1], {eggs: 2})
  2.  
  3. No: spam( ham[ 1 ], { eggs: 2 } )

2.2 -在逗号,分好,冒号之前不需要空格

  1. Yes: if x == 4: print x, y; x, y = y, x
  2.  
  3. No: if x == 4 : print x , y ; x , y = y , x

2.3 -在切片的时候,避免使用空格,在扩展的切片中,必须使用相同的空格个数

3.注释

3.1 块注释

在一段代码前增加注释,在#后添加一个空格,段落之间只有一个#作为行间隔

  1. # Description : Module config.
  2.  
  3. #
  4.  
  5. # Input : None
  6.  
  7. #
  8.  
  9. # Output : None

3.2 行注释

在使用行注释的时候,在代码句子结束之后至少两个空格,然后用#开头后跟一个空格

  1. x = x + 1 # Increment x
  2.  
  3. But sometimes, this is useful:
  4.  
  5. x = x + 1 # Compensate for border

3.3 文档注释

在所有的公共模块,函数,类,方法中加入文档注释,这些注释写在def之后。

在进行多行注释的时候,注意“”“结束的时候,必须独占一行,如下:

  1. """Return a foobang
  2.  
  3. Optional plotz says to frobnicate the bizbaz first.
  4.  
  5. """

4. 类名称

类名称主要遵循为CapWords约定,表示为首字母大写

5.1 异常名称

异常归于类,从而也要遵循类名的规范,主要是在后缀上必须添加“Error“

5.2 全局变量名

全局变量只在模块类有效,和function命名相同

5.3 方法名称

方法名称全部为小写,下划线是可选的(在增加可读性的基础上使用)

5.4 方法变量

类的方法第一个参数总是self

类方法的静态变量总是为crs

如果一个方法的参数和保留字相冲突,那么在后面添加下划线进行区分

  

  

  

  

PEP8编码规范的更多相关文章

  1. Python 常用 PEP8 编码规范

    Python 常用 PEP8 编码规范 代码布局 缩进 每级缩进用4个空格. 括号中使用垂直隐式缩进或使用悬挂缩进. EXAMPLE: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 ...

  2. 16 pep8 编码规范

    pep8 编码规范 Python Enhancement Proposals :python改进方案 https://www.python.org/dev/peps/ 1. 每级缩进用4个空格. 括号 ...

  3. 【翻译】Python PEP8编码规范(中文版)

    原文链接:http://legacy.python.org/dev/peps/pep-0008/ item detail PEP 8 Title Style Guide for Python Code ...

  4. [python]pep8编码规范

    一 代码编排1 缩进.4个空格的缩进(编辑器都可以完成此功能),不使用Tap,更不能混合使用Tap和空格.2 每行最大长度79,换行可以使用反斜杠,最好使用圆括号.换行点要在操作符的后边敲回车.3 类 ...

  5. Python PEP8 编码规范

    代码编排 缩进.缩进4个空格,不能混合使用Tab和空格. 每行最大长度79,文档字符串和注释行最大长度为72,换行可以使用反斜杠,最好使用圆括号. 类和顶层函数定义之间空两行:类中的方法定义以单行分隔 ...

  6. Python PEP8 编码规范中文版

    原文链接:https://legacy.python.org/dev/peps/pep-0008/ 参考:https://blog.csdn.net/ratsniper/article/details ...

  7. python 编码规范起源:PEP8 编码规范中文版

    PEP: 8 标题: Python代码的样式指南 版: c451868df657 最后修改: 2016-06-08 10:43:53 -0400(2016年6月8日星期三) 作者: Guido van ...

  8. Python 常用 PEP8 编码规范和建议

    代码布局 缩进 每级缩进用4个空格. 括号中使用垂直隐式缩进或使用悬挂缩进. EXAMPLE: # (垂直隐式缩进)对准左括号 foo = long_function_name(var_one, va ...

  9. PEP8 - Python编码规范

    PEP8 - Python编码规范 PEP8 规范 官方文档:https://www.python.org/dev/peps/pep-0008/ PEP8 规范 中文翻译:http://www.cnb ...

随机推荐

  1. 【BZOJ】1037: [ZJOI2008]生日聚会Party(递推+特殊的技巧)

    http://www.lydsy.com/JudgeOnline/problem.php?id=1037 看来自己越来越弱了... 这些计数题设计的状态都很巧妙,,自己智商太低QAQ 和矩阵dp做的那 ...

  2. Machine Learning With Spark学习笔记(在10万电影数据上训练、使用推荐模型)

    我们如今開始训练模型,还输入參数例如以下: rank:ALS中因子的个数.通常来说越大越好,可是对内存占用率有直接影响,通常rank在10到200之间. iterations:迭代次数,每次迭代都会降 ...

  3. 浅谈AutoResetEvent的用法

    using System;using System.Threading; namespace AutoResetEvent_Examples{    class MyMainClass    {    ...

  4. openssl之EVP系列之8---EVP_Digest系列函数具体解释

    openssl之EVP系列之8---EVP_Digest系列函数具体解释     ---依据openssl doc/crypto/EVP_DigestInit.pod翻译和自己的理解写成     (作 ...

  5. 分页技巧_改进JSP页面中的公共分页代码_实现分页时可以有自定义的过滤与排序条件

    分页技巧__改进JSP页面中的公共分页代码 自定义过滤条件问题 只有一个url地址不一样写了很多行代码 public>>pageView.jspf添加 分页技巧__实现分页时可以有自定义的 ...

  6. Leetcode: Anagrams(颠倒字母而成的字)

    题目 Given an array of strings, return all groups of strings that are anagrams. Note: All inputs will ...

  7. iOS 开发之 -- UDID和UUID的详解

    老实说,搞了几年的ios开发了,对基础的概念,还是不牢固,整天都是为了赶进度而码代码,这里记录一下这两者的区别: UDID的全名为 Unique Device Identifier :设备唯一标识符. ...

  8. Popwindow系列

    一系列干货等你来拿 关于我:http://www.cnblogs.com/dubo-/ 项目中也有很多实用的事例,等待录入中...

  9. hammer.js移动端手势库

    hammer.js 是一个多点触摸手势库,能够为网页加入Tap.Double Tap.Swipe.Hold.Pinch.Drag等多点触摸事件,免去自己监听底层touchstart.touchmove ...

  10. 170327、Java微信支付中的扫码支付

    微信支付现在已经变得越来越流行了,随之也出现了很多以可以快速接入微信支付为噱头的产品,不过方便之余也使得我们做东西慢慢依赖第三方,丧失了独立思考的能力,这次打算分享下我之前开发过的微信支付. 一 H5 ...