PEP8 Python 编码规范整理

律来帮
商家名称:
律来帮
商家认证:
VIP会员
手机号码:
18365284851
添加微信:
18365284851
温馨提示:
请说在创想鸟看到,优惠更多

决定开始Python之路了,利用业余时间,争取更深入学习Python。编程语言不是艺术,而是工作或者说是工具,所以整理并遵循一套编码规范是十分必要的。所以今天根据PEP8整理了一份,以后都照此编码了,还会持续更新。

一 代码编排

1 缩进。4个空格的缩进(编辑器都可以完成此功能),不使用Tap,更不能混合使用Tap和空格。

2 每行最大长度79,换行可以使用反斜杠,最好使用圆括号。换行点要在操作符的后边敲回车。

3 类和top-level函数定义之间空两行;类中的方法定义之间空一行;函数内逻辑无关段落之间空一行;其他地方尽量不要再空行。

二 文档编排

1 模块内容的顺序:模块说明和docstring—import—globals&constants—其他定义。其中import部分,又按标准、三方和自己编写顺序依次排放,之间空一行。

2 不要在一句import中多个库,比如import os, sys不推荐。

3 如果采用from XX import XX引用库,可以省略‘module.’,都是可能出现命名冲突,这时就要采用import XX。

三 空格的使用

总体原则,避免不必要的空格。

1 各种右括号前不要加空格。

2 逗号、冒号、分号前不要加空格。3 函数的左括号前不要加空格。如Func(1)。4 序列的左括号前不要加空格。如list[2]。5 操作符左右各加一个空格,不要为了对齐增加空格。6 函数默认参数使用的赋值符左右省略空格。7 不要将多句语句写在同一行,尽管使用‘;’允许。8 if/for/while语句中,即使执行语句只有一句,也必须另起一行。

四 注释

总体原则,错误的注释不如没有注释。所以当一段代码发生变化时,第一件事就是要修改注释!注释必须使用英文,最好是完整的句子,首字母大写,句后要有结束符,结束符后跟两个空格,开始下一句。如果是短语,可以省略结束符。

1 块注释,在一段代码前增加的注释。在‘#’后加一空格。段落之间以只有‘#’的行间隔。比如:

# Description : Module config. # # Input : None # # Output : None

2 行注释,在一句代码后加注释。比如:x = x + 1 # Increment x但是这种方式尽量少使用。3 避免无谓的注释。

五 文档描述

1 为所有的共有模块、函数、类、方法写docstrings;非共有的没有必要,但是可以写注释(在def的下一行)。2 如果docstring要换行,参考如下例子,详见PEP 257

“””Return a foobang Optional plotz says to frobnicate the bizbaz first. “””

六 命名规范

总体原则,新编代码必须按下面命名风格进行,现有库的编码尽量保持风格。1 尽量单独使用小写字母‘l’,大写字母‘O’等容易混淆的字母。2 模块命名尽量短小,使用全部小写的方式,可以使用下划线。3 包命名尽量短小,使用全部小写的方式,不可以使用下划线。4 类的命名使用CapWords的方式,模块内部使用的类采用_CapWords的方式。5 异常命名使用CapWords+Error后缀的方式。6 全局变量尽量只在模块内有效,类似C语言中的static。实现方法有两种,一是__all__机制;二是前缀一个下划线。7 函数命名使用全部小写的方式,可以使用下划线。8 常量命名使用全部大写的方式,可以使用下划线。9 类的属性(方法和变量)命名使用全部小写的方式,可以使用下划线。9 类的属性有3种作用域public、non-public和subclass API,可以理解成C++中的public、private、protected,non-public属性前,前缀一条下划线。11 类的属性若与关键字名字冲突,后缀一下划线,尽量不要使用缩略等其他方式。12 为避免与子类属性命名冲突,在类的一些属性前,前缀两条下划线。比如:类Foo中声明__a,访问时,只能通过Foo._Foo__a,避免歧义。如果子类也叫Foo,那就无能为力了。13 类的方法第一个参数必须是self,而静态方法第一个参数必须是cls。

七 编码建议

1 编码中考虑到其他python实现的效率等问题,比如运算符‘+’在CPython(Python)中效率很高,都是Jython中却非常低,所以应该采用.join()的方式。2 尽可能使用‘is’‘is not’取代‘==’,比如if x is not None 要优于if x。3 使用基于类的异常,每个模块或包都有自己的异常类,此异常类继承自Exception。4 异常中不要使用裸露的except,except后跟具体的exceptions。5 异常中try的代码尽可能少。比如:

try: value = collection[key] except KeyError: return key_not_found(key) else: return handle_value(value)

要优于

try: # Too broad! return handle_value(collection[key]) except KeyError: # Will also catch KeyError raised by handle_value() return key_not_found(key)

6 使用startswith() and endswith()代替切片进行序列前缀或后缀的检查。比如

Yes: if foo.startswith(‘bar’):优于No: if foo[:3] == ‘bar’:7 使用isinstance()比较对象的类型。比如Yes: if isinstance(obj, int): 优于No: if type(obj) is type(1):8 判断序列空或不空,有如下规则Yes: if not seq:if seq:优于No: if len(seq)if not len(seq)9 字符串不要以空格收尾。10 二进制数据判断使用 if boolvalue的方式。

消息提醒:福州的白女士添加了微信

律师在线法律咨询,24小时在线咨询
微信号:18365284851

微信扫描上方二维码联系我们

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:普法网,转转请注明出处:https://law.chuangxiangniao.com/p/126.html

(13)
上一篇 2017年4月17日 17:21:32
下一篇 2017年4月17日 22:54:20

相关推荐

  • 关于离婚孩子抚养权问题(民法典离婚孩子抚养权判决规定)

    离婚是婚姻的不幸 但孩子是无辜的 夫妻离婚后 并不意味着父母与子女断绝关系 父母仍承担着抚养子女的义务 今天我们就来谈谈离婚后子女抚养相关问题 1 离婚后子女应该归谁抚养? 离婚虽然不能消除父母与子女之间的关系,却会改变抚养方式。《民法典》第1084条第3款规定将离婚后子女的抚养问题分为两种情况:一是不满2周岁的子女,以由母亲直接抚养为原则。这是因为母乳喂养…

    2025年2月10日 法律资讯
    1000
  • 继承顺序的法律规定(继承顺序及分配比例的司法解释)

    通常,继承顺序的问题仅在法定继承中提及。因为只有在法定继承中,继承人才没有安排财产。那么,你知道我们国家的继承顺序是什么吗? 一.遗产继承的继承顺序是什么? 1.首先应该看看死者是否有遗嘱。如果有遗嘱,则应根据遗嘱执行。 2.如果没有遗嘱,应该确定谁可以成为继承人?继承人第一顺序是(配偶,子女,父母)和第二顺序(兄弟姐妹,祖父母,外祖父母)。继承开始后,它由…

    2025年2月10日
    600
  • 遗书怎么写家人(个人手写遗嘱范本规定)

    很多粉丝问遗嘱怎么写?今天发福利了,教给大家写出最简单、方便、有效的遗嘱!记住以下六点,一切都OK了。如果您还不放心,文章结尾有我精心整理的自书遗嘱模板,您可以直接用。 遗嘱 第一,遗嘱从头到尾全部亲笔手写,字写的难看也没关系,如果打印可以吗?打印的遗嘱在法律上叫打印遗嘱,要求必须有两个见证人。所以不要打印了,手写最简单。 第二,一定要有亲笔签名,强调只有人…

    2025年2月10日 法律资讯
    900
  • 新的婚姻法婚前房产的归属(关于婚前房产的规定)

    房子,对于已婚夫妻来说是最重要不过的事情了。婚前房和婚后房更是夫妻双方尤为关注的焦点事情。而对于这样婚前购买的房产,要是日后夫妻离婚的话,该怎么进行分配呢?你知道吗? 当婚姻遇到感情破裂,面对房产时,有些家庭就会因为房产划分的问题,闹得不可开交,正因为有很多类似的事情发生,这让很多准备结婚或者是已经结婚的朋友产生了划分婚前财产的想法。 而现在的婚姻法对于婚前…

    法律资讯 2025年2月10日
    1000
  • 起诉离婚请律师和不请律师的区别是什么(离婚请律师的情况)

    离婚从来不是一件容易的事,甚至对于很多人来说是一场没有硝烟的战争,如果感情走到最后能够好聚好散便是最好的结果,但大多事与愿违。而面对离婚,很多当事人都会疑惑是否该请律师来处理自己的离婚案件,其实当遇到以下情况时,建议您请求专业律师帮助: 1. 被起诉——突然收到另一半向法院递交的起诉状 很多当事人陈述,前几天还在跟对方沟通,却突然收到对方的起诉状。当看到起诉…

    2025年2月10日
    700
  • 国家法定婚假有多少天(关于婚假的最新规定)

    一、民法典婚假是多少天 我国《民法典》规定,结婚年龄男方不得早于22周岁,女方不得早于20周岁。现行计划生育政策鼓励晚婚,男年满二十五周岁、女年满二十三周岁的初婚为晚婚。符合晚婚年龄的夫妇,可以在法定三天婚假的基础上增加婚假一周,合计十天,(一次性连续享受,遇国定假日顺延,含双休日)双方达到双方享受,一方达到一方享受。增加的一周婚假。工资、奖金照发。使用。晚…

    法律资讯 2025年2月10日
    800
  • 离婚案法庭第一次开庭程序是什么(起诉离婚流程)

    虽说每一个起诉离婚案件都有各自的独特之处,但是在开庭后都会按照法律设定好的流程进行审理。接下来,本离婚律师结合多年办案经验为大家梳理一下离婚案件的开庭审理流程。 离婚案件的庭审可以分为多个环节,但是在每一个环节中都有一个重要的规则,即原告先,被告后。比如在就某一事实发表意见时,需要先由原告说,然后才轮到被告。除非法官认为需要被告单独就某个问题。此外,法庭上还…

    2025年2月10日
    900
  • 民法典关于离婚管辖权的规定(婚姻案件管辖地的法律条文)

    随着生活节奏越来越快,生活压力也并没有随之减弱。很多人把时间都投入到工作中,导致在家庭中没有扮演好妻子或者丈夫的角色而引起离婚。那么,离婚起诉地有什么法律规定? 网友咨询: 离婚起诉地有什么法律规定? 赵亮律师解答: 1、一般情况下,根据民事诉讼法规定,离婚案件由被告住所地或者婚姻缔结地(通常指婚姻登记机关所在地)人民法院管辖。被告住所地与经常居住地不一致的…

    2025年2月10日
    800
  • 办理结婚证需要什么手续(领结婚证流程和需要材料)

    再婚需要什么证件办理结婚证? 再婚办理结婚登记和一般的结婚登记没有什么不同。只是要带上离婚证这一点与一般结婚不同。其他证件是带户口薄、身份证,到婚姻登记处,可以当场照相、而且要填写声明书和一些表格,交一点工本费。 在办理结婚登记时,应当出具法院判决离婚的判决书或者调解书;如果是到婚姻登记机关办理的离婚登记,应当出具离婚书。双方的身份证、户口本。有的地方还要体…

    法律资讯 2025年2月10日
    700
  • 孕妇请假遭解雇合法吗(怀孕开除员工的法律赔偿规定)

    【读者求助】 近日,市民张盼盼向本报记者求助,她应聘了本地一家建筑公司的会计职位,被录用后签订了劳动合同。工作四个月后发现自己怀孕了。因为之前她曾有流产经历,医生建议她静养保胎。她向公司申请休假,没过多长时间,公司就以她不胜任工作为由,要与她解除劳动合同。 “我跟丈夫结婚三年多,其间我怀过孕,可是流产了。之后,就一直没再怀孕。我和丈夫都盼望有个宝宝,现在,好…

    法律资讯 2025年2月10日
    900
  • 重婚罪的法条有哪些(新民法典对重婚罪的定义)

    重婚是指有配偶者又与他人结婚的违法行为。其表现为法律上的重婚和事实上的重婚。前者是指有配偶又与他人登记结婚。后者是指有配偶者又与他人以夫妻名义同居生活。那么婚姻法重婚罪的规定有哪些呢?下面找法网小编就来给大家介绍一下相关内容。 婚姻法重婚罪的规定有哪些呢?下面找法网小编就来给大家介绍一下相关内容,希望能给大家带来一定的帮助。 一、因重婚罪而引发的离婚案件,会…

    2025年2月10日
    800
  • 晚育年龄范围是多少岁(国家有关晚育年龄规定)

    晚婚晚育的标准: 1、晚婚的前提是双方都为初婚,如果其中一方属于再婚就不属晚婚; 2、男25周岁以上、女23周岁以上结婚为晚婚; 3、晚婚晚育享受国家的鼓励政策,双方达到双方享受,一方达到一方享受。 4、公民晚婚晚育,可以获得延长婚假、生育假的奖励或者其他福利待遇。 【法律依据】 《人口和计生条例 》 第二十五条公民晚婚晚育,可以获得延长婚假、生育假的奖励或…

    2025年2月10日
    1000
  • 离婚协议怎么写对女方和孩子有利(正规离婚协议范本)

    离婚协议书 该怎么写? 除了写明双方姓名、 证件号码等基本信息外 还需注意这四点! 第一写明双方自愿离婚。 防止一方在签署离婚协议时存在被欺诈或被胁迫的情形。 第二写明孩子的抚养权归谁,抚养费是多少,抚养费支付方式,支付截止时间; 同时,尽量约定清楚探视的时间,探视的具体方式。 第三写明财产分割,首先写明夫妻共同财产有哪些,其次写明这些财产具体怎么分配。 第…

    2025年2月10日
    900
  • 领结婚证要带什么材料(去民政局领证步骤及需要的材料)

    结婚登记需要带的证件材料: (1)户口证明; (2)居民身份证; (3)所在单位、村民委员会或者居民委员会出具的婚姻状况证明。 【法律依据】 《婚姻法》第八条,要求结婚的男女双方必须亲自到婚姻登记机关进行结婚登记。符合本法规定的,予以登记,发给结婚证。取得结婚证,即确立夫妻关系。未办理结婚登记的,应当补办登记。

    2025年2月10日
    1100
  • 离婚协议书范文(分享离婚协议书简易版范文)

    离婚协议书 协议人:XXX,男,XXXX年XX月XX日出生, 身份证号码XXXXXXXXXXXXXXXXXX, 住北京市XX区XXXX号楼XXX室。 协议人:XXX,女,XXXX年XX月XX日出生, 身份证号码XXXXXXXXXXXXXXXXXX, 住北京市XX区XXXX号楼XXX室。 双方于XXXX年X月XX日在XX区民政局办理结婚登记。XXXX年XX月X…

    法律资讯 2025年2月10日
    1000

发表回复

登录后才能评论