- 书写风格
【链接】PEP8—StyleGuideforPythonCode
https://www.python.org/dev/peps/pep-0008/import this
其他资源
www.Python.org/doc/essays/styleguide.htmlwww.Python.org/dev/peps/pep-0007/www.Python.org/dev/peps/pep-0008/www.Python.org/dev/peps/pep-0020/www.Python.org/dev/peps/pep-0257/
- 模块布局
# (1) 起始行(Unix)# (2) 模块文档
# (3) 模块导入# (4) 变量定义# (5) 类定义# (6) 函数定义# (7) 主程序
- 调试及开放工具
z Debugger: pdbz Logger: loggingz Profilers: profile, hotshot, cProfile
- 变量
变量无须事先声明变量无须指定类型程序员不用关心内存管理变量名会被“回收”del 语句能够直接释放资源
Python 语言中,对象的类型和内存占用都是运行时确定的。
- __name__
如果模块是被导入, __name__ 的值为模块名字如果模块是被直接执行, __name__ 的值为 '__main__'
- __doc__
用来访问模块,类声明或者函数的声明中第一个未被赋值的字符串,可以是被""" ""","" "",' ',括起来的,访问的方法就是obj.__doc__,obj是这个模块,类或者函数的名称,可以print出来。运行时也可以运行
- 变量命名:
变量选择短而意义丰富的标识符
- Python 不支持重载标识符
- 链式赋值
y = (x = x + 1) # 不可执行
y = x = x + 1 #y=x=2 链式赋值
- 增量赋值
y++ #不可执行
y += 1#可以执行,增量赋值
- 多重赋值
x=y=z=1 #多重赋值
- 多元赋值
x, y = 1, 2 #多元赋值
(x, y) = (1, 2) #多元赋值
- 交换
x, y = y, x #互换两个值
- 关键字在那里定义
都在keyword模块中定义
技巧:
核心技巧:使用局部变量替换模块变量 --《python核心编程》