关键词搜索

源码搜索 ×
×

google Python编码规范

发布2021-08-21浏览559次

详情内容

一.编码规范

1.行长度

每行不超过80个字符

一个文本字符串在一行放不下, 可以使用圆括号来实现隐式行连接

例子

  1. x = ('test test'
  2. 'test test')
  3. 相当于X='test test test test'

其不对注释有影响

2.关于缩进

用4个空格来缩进代码

3.关于字典,列表,元祖尾部逗号

仅当 ])} 和末位元素不在同一行时,推荐使用序列元素尾部逗号

例子

  1. Yes: golomb3 = [0, 1, 3]
  2. Yes: golomb4 = [
  3. 0,
  4. 1,
  5. 4,
  6. 6,
  7. ]
  8. No: golomb4 = [
  9. 0,
  10. 1,
  11. 4,
  12. 6
  13. ]

4.关于空行

  1. 类的定义和不在类内的方法定义空两行
  2. 类内的方法直接空一行

5.关于空格

  1. 比较运算符,前后都空一个
  2. x == 1
  3. 非比较运算符,后都空一个
  4. print(x, y)
  5. {eggs: 2}
  6. 赋值运算赋值的是方法里的关键字形参不空格
  7. requests.get(url="xxxxx")

6.Shebang

大部分.py文件不必以#!作为文件的开始. 根据 PEP-394 , 程序的main文件应该以 #!/usr/bin/python2 或者 #!/usr/bin/python3 开始.

7.注释

函数和方法的注释

  1. 这两种都可以主要是简单明了
  2. def md5_encrypt(data):
  3. '''
  4. MD5加密 #方法简介
  5. :param data: 加密参数
  6. :return: 加密后的值
  7. '''
  8. def md5_encrypt(data):
  9. '''MD5加密'''

普通注释要一目了然

TODO注释

代码留位置方便下次定位或者经常修改的位置  #todo 或者#TODO

8.标点符号,拼写和语法

驼峰体addData 或者下划线 add_data

常量全大写

9.字符串中有变量

  1. 字符串中有变量
  2. Yes: x = a + b
  3. x = '{}, {}!'.format(imperative, expletive)
  4. x = 'name: %s; score: %d' % (name, n)
  5. %s代表字符串,%d代表数字
  6. Python3引进如果没有{} 推荐使用 f'{变量a}'
  7. 列表内的字符串拼接推荐用join
  8. a = ''.join(ls)

10.文件管理

推荐使用with with内代码结束会自动关闭文件

  1. with open("hello.txt") as hello_file:
  2. for line in hello_file:
  3. print(line)
  4. #这里推荐使用for 按行读取

11.导入格式

每个导入应该独占一行, typing 的导入除外

12.一行语句

通常每个语句应该独占一行不过, 如果测试结果与测试语句在一行放得下, 你也可以将它们放在同一行. 如果是if语句, 只有在没有else时才能这样做. 特别地, 绝不要对 try/except 这样做, 因为try和except不能放在同一行.

示范

复制
  1. Yes:
  2. if foo: bar(foo)
  3. try:
  4. bar(foo)
  5. except ValueError:
  6. baz(foo)
  7. No:
  8. if foo: bar(foo)
  9. else: baz(foo)
  10. try: bar(foo)
  11. except ValueError: baz(foo)
  12. try:
  13. bar(foo)
  14. except ValueError: baz(foo)

13.常见的一些细python教程节错误

  1. [1,12,3,3,], 相当于 ([1, 12, 3, 3],)
  2. 元祖类型(1,2)只读不可写要转换成list才能写入

相关技术文章

点击QQ咨询
开通会员
返回顶部
×
微信扫码支付
微信扫码支付
确定支付下载
请使用微信描二维码支付
×

提示信息

×

选择支付方式

  • 微信支付
  • 支付宝付款
确定支付下载