python代码PEP8规范示例

"""
文档字符串 docstring, 是 package, module, class, method, function 级别的注释,可以通过 doc 成员访问到,注释内容在一对双引号
优先使用英文写注释,英文不好全部写中文,强行使用英文可能导致大家都看不懂
1.所有 import 尽量放在文件开头,在 docstring 下面,其他变量定义的上面
2.不要使用 from foo import *
3.import 需要分组,每组之间一个空行,每个分组内的顺序尽量采用字典序,分组顺序是:
    3.1 标准库
    3.2 第三方库
    3.3 本项目的 package 和 module
4.不要使用隐式的相对导入(implicit relative imports)
  可以使用显示的相对导入(explicit relative imports),如 from ..utils import parse
  最好使用全路径导入(absolute imports)
5.同一个 package/module 下的内容可以写一起
6.为了避免可能出现的命名冲突,可以使用 as 或导入上一级命名空间

"""
import os
import sys
import db

from flask import Flask, render_template, jsonify
from collections import defaultdict as my_dict

# 这是一个正确注释,#后面需要一个空格,如下为特例
#!/usr/bin/python

# 操作符两端加一个空格,如 +, -, *, /, |, &, =
a = 1 + 2
b = 10 - 1
c = 1 * 2
d = 10 / 5
e = 10 | 20
f = 5 & 6

# 在参数列表里的 = 两端不需要空格
def add(num1=1, num2=2):
    return num1 + num2

# function 和 class 顶上两个空行
class MyClass(object):
    def my_function1(self):
        pass

    # class 的 method 之间一个空行
    def my_function2(self):
        # 函数内逻辑无关的段落之间空一行,不要过度使用空行
        # 逻辑1

        # 逻辑2

        # 逻辑3

        return

# 不要把多个语句写在一行,然后用 ; 隔开
add(1, 2)
add(3, 4)

# 括号((), {}, [])内的两端不需要空格
tmp = (‘name1‘, ‘name2‘)

# if/for/while 语句中,即使执行语句只有一句,也要另起一行
if True:
    print(‘另起一行‘)

# 每一行代码控制在 80 字符以内
# 面对抢票软件的花样,有专家提醒,虽然理论上抢票软件比人工刷新更快,但12306已经屏蔽了许多抢票端口并推出了“官方抢票”
# 的候补功能——也就是,当没有余票时,12306会在车次列表中出现“候补”的字样。旅客可根据需求选择车次、席别,在成功支付
# 候补预付款后,如果有匹配需求的车票,系统会自动生成已支付订单,并退回差额;如果没有,系统将全额退还预付款。那么,这个
# 候补功能和市面上的抢票软件谁更好用?如果用抢票软件,又有哪些套路要小心?

# 使用 \ 或 () 控制换行
def foo(tmp1=‘aa‘, tmp2=‘bb‘, tmp3=‘cc‘, tmp4=‘dd‘,
        tmp5=‘ee‘, tmp6=‘ff‘, tmp7=‘gg‘, tmp8=‘hh‘):
    pass

# 使用有意义的,英文单词或词组,绝对不要使用汉语拼音
address = ‘suzhou‘

# package/module 名中不要出现 -

# 不要轻易使用 try/except,except 后面需要指定捕捉的异常,裸露的 except
# 会捕捉所有异常,意味着会隐藏潜在的问题
# 可以有多个 except 语句,捕捉多种异常,分别做异常处理
age = ‘111‘
try:
    age = int(age)
except(TypeError, ValueError):
    render_template()

# 使用 finally 子句来处理一些收尾操作
try:
    db.session.commit()
except sqlalchemy.exc.SQLAlchemyError: # 或者更具体的异常
    db.session.rollback()
finally:
    db.session.close()

# 显示的写明父类,如果不是继承自别的类,就继承自 object 类
# 使用 super 调用父类的方法
# 支持多继承,即同时有多个父类,建议使用 Mixin
class MyClass(object):
    pass

  

参考文档:https://zhuanlan.zhihu.com/p/33705005

原文地址:https://www.cnblogs.com/hester/p/12114668.html

时间: 2024-08-04 13:53:44

python代码PEP8规范示例的相关文章

Python - 部分PEP8规范

写代码就像写字一样,为什么有的人写的字十分漂亮,而有的人写的字过后连自己都不认识,最主要还是从一开始是否对自己严格要求.从现在开始就当自己是个初学者,把代码写漂亮点.以下截取了部分PEP8代码规范,里面掺杂了一些个人中文注解. 想看英文原版,就点击 https://legacy.python.org/dev/peps/pep-0008/想看中文翻译版,就点击 https://blog.csdn.net/ratsniper/article/details/78954852 缩进 # 函数参数应垂直

python代码格式规范

目前的规范基于pep-0008 基本格式 缩进 使用4个空格进行缩进 行宽 每行代码尽量不超过80个字符 理由: 这在查看side-by-side的diff时很有帮助 方便在控制台下查看代码 太长可能是设计有缺陷 换行 Python支持括号内的换行.这时有两种情况. 第二行缩进到括号的起始处 foo = long_function_name(var_one, var_two, var_three, var_four) 第二行缩进4个空格,适用于起始括号就换行的情形 def long_functi

Python 常用PEP8规范

目录 目录 代码布局 缩进 最大行宽 空行 模块导入 字符串 表达式和语句中的空格 注释 命名规则 编程建议 代码布局 缩进 每级缩进用4个空格. 括号中使用垂直隐式缩进或使用悬挂缩进. EXAMPLE: # (垂直隐式缩进)对准左括号 foo = long_function_name(var_one, var_two, var_three, var_four) # (悬挂缩进) 一般情况只需多一层缩进 foo = long_function_name( var_one, var_two, va

Python代码编写规范,你真的会吗?

前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理.作者:yangjiajia123456  最近两年的工作都是和运维相关,有时运维人员也会写一些python程序,但基本上都没有遵循相应的代码规范,一向粗暴,能用就行,既不考虑可读性也不考虑可维护性,作为一个开发人员有时候看他们写代码就很不舒服,今天就谈谈python写代码时的一些规范.如果你刚学python.不久遇到问题多,建议可以来小编的Python交流.裙 :一久武其而

Python代码编写规范

编码: a)     如无特殊情况,文件一律使用UTF-8编码 b)     如无需特殊情况,文件头部必须加入#-*-coding:utf-8-*- 缩进 a)     统一使用4个空格进行缩进 引号 a)     自然语言使用双引号"-.",正则表达式使用原生的双引号r"" b)     机器标识使用单引号'' c)      文档字符串(docstring)使用三个双引号"""-""" 空行 a)   

python代码检查工具pylint 让你的python更规范

1.pylint是什么? Pylint 是一个 Python 代码分析工具,它分析 Python 代码中的错误,查找不符合代码风格标准(Pylint 默认使用的代码风格是 PEP 8,具体信息,请参阅参考资料)和有潜在问题的代码.目前 Pylint 的最新版本是 pylint-0.18.1. Pylint 是一个 Python 工具,除了平常代码分析工具的作用之外,它提供了更多的功能:如检查一行代码的长度,变量名是否符合命名标准,一个声明过的接口是否被真正实现等等. Pylint 的一个很大的好

如何使用 Pylint 来规范 Python 代码风格

https://www.ibm.com/developerworks/cn/linux/l-cn-pylint/ Pylint 是什么 Pylint 是一个 Python 代码分析工具,它分析 Python 代码中的错误,查找不符合代码风格标准(Pylint 默认使用的代码风格是 PEP 8,具体信息,请参阅参考资料)和有潜在问题的代码.目前 Pylint 的最新版本是 pylint-0.18.1. Pylint 是一个 Python 工具,除了平常代码分析工具的作用之外,它提供了更多的功能:如

PEP8 规范

Python PEP8 编码规范中文版 原文链接:http://legacy.python.org/dev/peps/pep-0008/ item detail PEP 8 Title Style Guide for Python Code Version c451868df657 Last-Modified 2016-06-08 10:43:53 -0400 (Wed, 08 Jun 2016) Author Guido van Rossum <guido at python.org>, B

这7大神器, 让你的Python 代码更易于维护

当软件项目进 入"维护模式"时,对代码的可读性和编码标准经常就忽略了(甚至从一开始就没有建立起这些标准.)但是,在代码库中保持一致的风格和测试标准是减少维护负担的重要因素,它能确保未来的开发人员能够快速了解新的项目情况 - 并保持项目的良好运行 保护项目未来可维护性的一个好方法就是使用外部库来检查你的代码运行状况.以下是我们最喜欢的一些用于检查代码的库(包含检查PEP 8和其他样式错误),让代码风格保持一致,并确保在项目成熟时的测试覆盖率保持在可接受范围. 检查你的代码风格 PEP 8