标签:ann bin 换行符 lte ISE 逻辑模块 ini 自己 not
python 开发规范 预览版本文主要参考 pep8和jumpserver开发规范,结合实际,进行修改,欢迎提出修改意见。
import x
from x import y
from x import y as z
禁止import x,y
使用 as
try:
raise Error
except Error as error:
pass
1. Python 严格采用4个空格的缩进,任何 Python 代码都都必须遵守此规定。
2. 字符, 后面空一个格
限制最大120个字符。
编写长语句时,可以使用换行符""换行。在这种情况下,下一行应该与上一行的最后一个“.”句点或“=”对齐,或者是缩进4个空格符。
this_is_a_very_long(function_call, ‘with many parameters‘) .that_returns_an_object_with_an_attribute
MyModel.query.filter(MyModel.scalar > 120) .order_by(MyModel.name.desc()) .limit(10)
如果你使用括号“()”或花括号“{}”为长语句换行,那么下一行应与括号或花括号对齐:
this_is_a_very_long(function_call, ‘with many parameters‘,
23, 42, ‘and even more‘)
对于元素众多的列表或元组,在第一个“[”或“(”之后马上换行:
items = [
‘this is the first‘, ‘set of items‘, ‘with more items‘,
‘to come in this line‘, ‘like this‘
]
顶层函数与类之间空两行,此外都只空一行。不要在代码中使用太多的空行来区分不同的逻辑模块。
def hello(name):
print(‘Hello %s!‘ % name)
class MyClass(object):
"""This is a simple docstring."""
def __init__(self, name):
self.name = name
def get_annoying_name(self):
return self.name.upper() + ‘!!!!111‘
单目运算符与运算对象之间不空格(例如,-,~等),即使单目运算符位于括号内部也一样。
双目运算符与运算对象之间要空格
exp = -1.05
value = (item_value / item_count) * offset / exp
value = my_list[index]
value = my_dict[‘key‘]
使用 f‘{name}{value}‘
所有文档字符串均以 reStructuredText 格式编写,方便 Sphinx 处理。文档字符串的行数不同,布局也不一样。 如果只有一行,代表字符串结束的三个引号与代表字符串开始的三个引号在同一行。 如果为多行,文档字符串中的文本紧接着代表字符串开始的三个引号编写,代表字符串结束的三个引号则自己独立成一行。 (有能力尽可能用英文, 否则请中文优雅注释)
def foo():
"""This is a simple docstring."""
def bar():
"""This is a longer docstring with so much information in there
that it spans three lines. In this case, the closing triple quote
is on its own line.
"""
文档字符串应分成简短摘要(尽量一行)和详细介绍。如果必要的话,摘要与详细介绍之间空一行。
def AvailableZones(self, instance_charge_type, region_id):
"""
功能: 可用区
:param instance_charge_type: 计费方式
:param region_id: 地域
:return: [‘cn-huhehaote-a‘, ‘cn-huhehaote-b‘]
"""
模块文件的头部包含有 utf-8 编码声明(如果模块中使用了非 ASCII 编码的字符,建议进行声明),以及标准的文档字符串。
#!/usr/bin/env python3.6
# -*- coding: utf-8 -*-
参考:http://docs.jumpserver.org/zh/docs/python_style_guide.html
标签:ann bin 换行符 lte ISE 逻辑模块 ini 自己 not
原文地址:http://blog.51cto.com/hequan/2286537