Better style for Python Programming

How to write better code with good style

Python Name Convention

python 命名规范

Type Convention Example
Packages & Modules lower_with_under from prefetch_generator import BackgroundGenerator
Classes CapWords class Dataloader
Constants CAPS_WITH_UNDER BATCH_SIZE=16
Instances lower_with_under dataset = Dataset
Methods & Functions lower_with_under() def visualize_tensor()
Variables lower_with_under background_colour = ‘Blue’

Main

tip:
即使是一个打算被用作脚本的文件, 也应该是可导入的. 并且简单的导入不应该导致这个脚本的主功能(main functionality)被执行, 这是一种副作用. 主功能应该放在一个main()函数中.

1
2
3
4
5
def main():
...

if __name__ == '__main__':
main()

所有的顶级代码在模块导入时都会被执行. 要小心不要去调用函数, 创建对象, 或者执行那些不应该在使用pydoc时执行的操作.

Reference

  1. Python风格规范 : https://zh-google-styleguide.readthedocs.io/en/latest/google-python-styleguide/python_style_rules/
  2. 机器之心:PyTorch最佳实践,怎样才能写出一手风格优美的代码