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)
上一篇 2025年3月7日 14:44:19
下一篇 2025年3月7日 14:46:22

相关推荐

  • 什么是夫妻共同财产(夫妻共同财产的法律规定)

    一、 夫妻共同财产 (一)夫妻共同财产的范围。夫妻共同财产是指夫妻关系存续期间所积累的共同享有的财产。夫妻关系存续期间,其财产以共同所有为原则,个人所有为例外。 哪些财产属于夫妻共同财产? 我对《民法典》及相关司法解释进行了归纳。根据《民法典》第1062条规定,以下财产是夫妻共有财产: 夫妻一方或双方取得的工资、奖金、劳务报酬。 夫妻一方或双方生产经营所投资…

    法律资讯 2025年5月24日
    800
  • 婚前出资属个人财产吗(婚前出资的财产归属问题了解)

    最高人民法院民事审判第一庭 编著《最高人民法院民法典婚姻家庭编司法解释(一)理解与适用》,人民法院出版社2021年6月出版 关于一方以婚前个人财产投资取得的婚后收益的认定 1.一方婚前财产的婚后自然孳息,根据物权原理,孳息应归物的所有人或其他合法权利人。 《民法典》第 1063条明确规定夫妻婚前财产归个人所有,那么这种财产产生的利息和其他孳生物应当属于夫妻个…

    法律资讯 2025年5月24日
    900
  • 婚姻法解释一(2022年婚姻法离婚新规定)

    民法典施行后,婚姻法失效,婚姻家庭法律纠纷的处理进入了民法典时代。法律需要衔接,对于婚姻家庭编涉及的各项具体的规定也需要进行专门的梳理。最高人民法院在2020年12月25日通过《最高人民法院关于适用〈中华人民共和国民法典〉婚姻家庭编的解释(一)》。这一司法解释的出台,为民法典时代婚姻家庭纠纷案件审理提供了具体的审判指导。 司法解释中将已经废止的婚姻法司法解释…

    2025年5月24日
    600
  • 广州居住证办理流程怎么走(广州居住证网上办理流程)

    在广州生活的你,办好居住证了吗? 它关乎到我们生活的方方面面 是很重要的一个证件, 不信?一起往下看吧! 广州居住证到底有什么用? 怎么办理? 广州居住证的用处 01 办理广州积分入户、积分入学 持有居住证及连续持有是积分入户及积分入学的必备条件。非广州户籍,参加积分入学,居住证必须满1年。 02 异地办理身份证 全国各省户籍人口均可凭有效居住证在广州进行身…

    2025年5月24日 法律资讯
    700
  • 新婚姻法的内容是什么(2022年最新离婚法律)

    “婚姻”,在我们许多人眼里就是这么简单,尤其是在男性朋友之间,脾气不好的时候会频繁出现打妻子的现象;当然,妻子被打之后也有可能怀恨在心把婚内财产给转移了;也有些男人有钱了,随意挥霍。 而现在,人们对于婚姻的看法也是不同的,有的年轻人认为只有和自己爱人的人才会选择结婚。而有些人认为相亲的对象有共同的生活目标才适合结婚。 但是,不管是哪一种结婚的方式,都是通过双…

    法律资讯 2025年5月24日
    1000
  • 离婚协议书怎么写(离婚协议书模板免费)

    离婚协议至少要要写明以下内容: 第一写明双方自愿离婚。 防止一方在签署离婚协议时存在被欺诈或被胁迫的情形。 第二写明孩子的抚养权归谁,抚养费是多少,抚养费支付方式,支付截止时间;同时,尽量约定清楚探视的时间,探视的具体方式。 第三写明财产分割,首先写明夫妻共同财产有哪些,其次写明这些财产具体怎么分配。 第四其他事宜,如住房问题、夫妻一方生活困难的经济帮助或者…

    法律资讯 2025年5月24日
    700
  • 简述监护人的职责内容是什么(监护人的权利和义务)

    监护人的职责 我国《民法典》监护制度中的重要组成部分之一就是监护人的职责。监护人的职责包括两部分,即监护人享有的监护权利和承担的监护义务。 在之前的文章中介绍了无民事行为能力人、限制民事行为能力人的法定代理人为其监护人,可见,监护人的重要法律功能就是补全被监护人行为能力的欠缺,帮助被监护人实施相应的民事法律行为,积极参与民事活动。 监护人的职责,具体如下: …

    2025年5月24日 法律资讯
    700
  • 2022年离婚申请流程(最新办理离婚手续流程)

    2022年您如果准备离婚,我现在告诉您怎么办理离婚手续。 离婚有两种情况:一种是双方就婚姻、孩子抚养、财产分割等能达成一致,可以协议离婚;一种是就婚姻、孩子抚养、财产分割有一项不能达成一致,只能诉讼离婚。 一、协议离婚 如果你们属于第一种,就离婚的所有事项都能协商好,那么你们可以这样办: 1、去哪里办:去一方户籍所在地的民政局办理; 2、谁办:两个人必须一起…

    法律资讯 2025年5月24日
    700
  • 公司股权转让协议简单范本(股权变更协议模板通用版)

    转让方: (以下简称甲方) 地址: 电话: 受让方: (以下简称乙方) 地址: 电话: 本合同由甲方与乙方于 年 月 日订立。 鉴于甲方在 公司合法拥有 %股权,该公司于 年 月 日在 工商行政管理局登记注册。现甲方有意转让其在 公司拥有的 %股权,并且甲方转让其股权的要求已获得 公司股东会的批准。 鉴于乙方同意受让甲方在 公司拥有 %股权。 鉴于 公司股东…

    法律资讯 2025年5月24日
    700
  • 个人合作协议合同范本(投资合作协议合同模板)

    甲方:_________ 乙方:_________ 以上各方共同投资人(以下简称“共同投资人”)经友好协商,根据中华人民共和国法律、法规的规定,双方本着互惠互利的原则,就甲乙双方合作投资项目事宜达成如下协议,以共同遵守。 第一条共同投资人的投资额和投资方式 甲、乙双方同意,以双方注册成立的公司(以下简称)为项目投资主体。 各方出资分别:甲方占出资总额的___…

    法律资讯 2025年5月24日
    900
  • 立法的基本原则有哪些(简述立法原则的具体内容)

    前文已经提到立法体制的问题,说到这立法体制是关于立法权配置方面的组织制度,其核心是立法权限的划分问题。一般而言,单一制国家多实行一元立法体制;联邦制国家多实行二元或多元立法体制。 那么立法又要遵循哪些立法原则呢? 这立法总得先合法吧? 所以啊,立法活动得遵循合宪和法制统一原则。 合宪原则 立法要遵守宪法,要维护法制统一,这是维护和保障立法活动合法性的重要性。…

    2025年5月24日
    700
  • 刑事案件审限多久(犯罪案件诉讼期限)

    随着社会的发展,人们生活的进步,在日常生活中,我们都知道对于一些触犯法律规定的人就应该受到法律的制裁,对此很多人都有着相应的了解。但很多人不了解的是,刑事案件超过多少年不追究呢? 网友询问: 犯罪案件的有限期限是多少,多久之后无法进行起诉? 律师解答: 1、刑事案件的起诉期限具体如下 追诉时效的期限是根据各种犯罪法定刑的轻重,分别规定长短不一的追诉时效期限:…

    2025年5月24日
    400
  • 注册公司的费用是多少(个人注册公司流程及费用)

    注册公司流程是: 1、填写申请表; 2、申请名称预先核准; 3、办理登记手续。手续办完后,由公司登记机关发给《企业法人营业执照》。注册公司目前仅需要按照规定缴纳相应工本费,不缴纳登记费。 注册一家公司要哪些费用 1、核名:免费 2、开验资户:0元 3、银行询证费:0-500元(以银行为准,认缴制不需要) 4、验资报告:0-500元(认缴制不需要) 5、工商执…

    法律资讯 2025年5月24日
    700
  • 怎样办理定期存款(去银行存定期存款流程)

    银行定期存款,有着最稳定的收益和最安全的保障,是一种常见的投资理财方式,深受广大投资者的青睐。 那么,如何使用银行卡来存定期存款呢?我们一起来了解下。 首先,我们需要将足够的资金存入银行卡中,然后在手机银行或网上银行的存款管理功能中,找到“定活转换”功能,输入存款金额并选择存款期限,就可以顺利的将银行卡中的活期存款,转为定期存款了。 当然,如果没有开通手机银…

    2025年5月24日
    700
  • 关于民法典婚姻法新规(2022年婚姻法离婚新规定)

    导语 《民法典》实施一年多了,其中的婚姻家庭篇对离婚做了详细的规定。关于离婚有五大规定,很多夫妻并不清楚,闹出了不少笑话。 正文 2021年1月1日起,《民法典》实施,其中的婚姻家庭篇取代了原来的《婚姻法》。现在,离婚已经成为一种普遍现象。可是,很多夫妻对《民法典》不是太了解,在离婚上做出了荒唐事。《民法典》婚姻家庭篇中,关于夫妻离婚有五大规定,希望准备离婚…

    2025年5月24日 法律资讯
    800

发表回复

登录后才能评论