摘要:
在Python中, 对于琐碎又不太重要的访问函数, 你应该直接使用公有变量来取代它们, 这样可以避免额外的函数调用开销.。当添加更多功能时, 你可以用属性(property)来保持语法的一致性。 如果访问更复杂, 或者变量的访问开销很显著, 那么你应该使用像 get_foo() 和 set_foo( 阅读全文
摘要:
1、 所谓"内部(Internal)"表示仅模块内可用, 或者, 在类内是保护或私有的。 2、 用单下划线(_)开头表示模块变量或函数是protected的(使用import * from时不会包含)。 3、 用双下划线(__)开头的实例变量或方法表示类内私有。 4、 将相关的类和顶级函数放在同一个 阅读全文
摘要:
一、模块 模块尽量使用小写命名,首字母保持小写,尽量不要用下划线(除非多个单词,且数量不多的情况)。 # 正确的模块名 import decoder import html_parser # 不推荐的模块名 import Decoder 二、类名 1、 类名使用驼峰(CamelCase)命名风格,首 阅读全文
摘要:
作为文档注释的Docstring一般出现在模块头部、函数和类的头部,这样在Python中可以通过对象的__doc__对象获取文档。编辑器和IDE也可以根据Docstring给出自动提示。 1、 文档注释以 """ 开头和结尾, 首行不换行, 如有多行, 末行必需换行, 以下是Google的docst 阅读全文
摘要:
1、 块注释 “#”号后空一格,段落间用空行分开(同样需要“#”号)。 # 块注释 # 块注释 # # 块注释 # 块注释 2、 行注释 至少使用两个空格和语句分开,注意不要使用无意义的注释。 # 正确的写法 x = x + 1 # 边框加粗一个像素 # 不推荐的写法(无意义的注释) x = x + 阅读全文
摘要:
1、在文件和sockets结束时, 显式的关闭它。 2、除文件外, sockets或其他类似文件的对象在没有必要的情况下打开, 会有许多副作用。 推荐使用 "with"语句 以管理文件。 对于不支持使用"with"语句的类似文件的对象,使用 contextlib.closing()。 阅读全文
摘要:
1、字符串格式化 Yes: x = a + b x = '%s, %s!' % (imperative, expletive) x = '{}, {}!'.format(imperative, expletive) x = 'name: %s; score: %d' % (name, n) x = 阅读全文
摘要:
docstring规范中最基本的两点: 1、所有的公共模块、函数、类、方法,都应该写 docstring 。私有方法不一定需要,但应该在 def 后提供一个块注释来说明。 2、docstring 的结束"""应该独占一行,除非此 docstring 只有一行。 """Return a foobar 阅读全文
摘要:
1、 在二元运算符两边各空一格[=,-,+=,==,>,in,is not, and]: # 正确的写法 i = i + 1 submitted += 1 x = x * 2 - 1 hypot2 = x * x + y * y c = (a + b) * (a - b) # 不推荐的写法 i=i+ 阅读全文
摘要:
1、 import 语句应该分行书写 # 正确的写法 import os import sys # 不推荐的写法 import sys,os # 正确的写法 from subprocess import Popen, PIPE 2、 import语句应该使用 absolute import # 正确 阅读全文
摘要:
1、 缩进 用4个空格来缩进代码。 绝对不要用tab, 也不要tab和空格混用.。对于行连接的情况, 你应该要么垂直对齐换行的元素, 或者使用4空格的悬挂式缩进(这时第一行不应该有参数): Yes: # 与起始变量对齐 foo = long_function_name(var_one, var_tw 阅读全文
摘要:
1、 如无特殊情况, 文件一律使用 UTF-8 编码。 2、 如无特殊情况, 文件头部必须加入#-*-coding:utf-8-*-标识。 3、 文件头注释格式: # -*- encoding: utf-8 -*- """ Copyright(C) 2018-2019 TEST All rights 阅读全文