防伪码:忘情公子著
python编程基础及编程风格:
语句和语法
注释:
#:可以从一行的任何地方开始
续行:
\:只能在行尾
''':闭合操作符,单一语句跨多行。实现多行注释、内置文档等功能
代码组:
缩进相同的一组语句构成的一个代码块
首行以关键字开始,如if、while等,以冒号结束
python使用缩进来分隔代码组,同一代码组的代码行必须严格左对齐,否则会造成语法错误
同一行放置多个语句:
;:以分号作为分隔符
模块:
每个python脚本文件都可以被当成是一个模块
模块里的代码可以是一段直接执行的脚本,也可以是一些类似库函数的代码从而可由别的模块执行导入(import)
每一个模块被导入时会被直接执行(仅第一次),因此纯模块文件中通常不会定义函数以外的代码,否则在import时就会被执行
标识符
标识符是计算机语言中允许作为名字的有效字符串集合:
其中有一部分是关键字,它们是语言的标识符,因此是保留字,不能用于其它用途
python3的关键字有以下这些:
Falseclassfinallyisreturn Nonecontinueforlambdatry
Truedeffromnonlocalwhile anddelglobalnotwith as
elififoryield assertelseimportpass breakexceptinraise
python还有称为"内建"的标识符集合,虽不是保留字,仍不推荐使用这些特别的名字
python标识符:
第一个字符只能使用字母或下划线;
余下的字符可以使用字母、数字或下划线;
区分字符大小写
基本编程风格
注释:既不能缺少注释,亦要避免过度注释
文档:python允许通过__doc__动态获得文档字串
缩进:统一缩进4个字串
标识符名称:见名知义
python风格指南:
python命名惯例:
以单一下划线开头的变量名(_x)不会被from module import *语句导入
前后有双下划线的变量名(__x__)是系统变量名,对解释器有特殊意义
以双下划线开头,但结尾没有下划线的变量名(__x)是类的本地变量
交互模式下,只有单个下划线的变量名(_)用于保存最后表达式的结果,类似于shell中的$?
python文件结构:
主程序:无论当前模块是被别的模块导入还是作为脚本直接执行,都会执行这部分代码
注意:所有的模块都有能力执行代码
最高级别的python语句(没有缩进的)在模块被导入时就会执行,无论是否真的需要执行
妥当的做法:除了那些真正需要执行的代码外,所有的功能代码都通过函数建立,因此
仅在主程序模块中编写大量的顶级可执行代码;
用于被导入的模块只应该存在较少的顶级执行代码
每个模块都有一个名为__name__的内建变量,此变量值会根据调用此模块的方式发生变化。__name__指示模块应该如何被加载。
如果模块文件是被导入的,__name__的值是模块名字
如果模块是直接执行的,__name__的值是"__main__"