REPL 环境是个简单、互动式的程序设计环境,在测试一些程序片段的行为时非常方便。
在 Python 2.x 中,print 是个陈述句(Statement),然而从 Python 3.0 开始,必须使用 print() 函数。
Python 3 之后,Python 编译器预期的源码文件编码必须是 UTF-8(Python 2.x 预期的是 ASCII)。若不想将文件的文字编码设置为 UTF-8,另一个解决方式是在源码的第一行,使用注解设置编码信息,Python 编译器只要在注解中看到 coding=<encoding name>
或者 coding:<encoding name>
出现就可以了。
在 Python 源码中,#开头代表这是一行注解,#之后不会被当成是程序的一部分。
每个 .py 文件本身就是一个模块,文件的文件名就是模块名称,想要引入模块时必须使用 import 关键字指定模块名称,若想取用模块中定义的名称,必须在名称前加上模块名称与一个「.」。
若想要取得命令列索引,可以通过 sys 模块中的 argv 清单。sys.argv 清单中的资料取用时必须指定索引号,这个索引号实际上从 0 开始,sys.argv[0] 会存储原始文件名,若有提供命令列索引,就依序从 sys.argv[1] 开始存储。
如果有多个模块需要 import,除了逐行 import 之外,也可以在但一行中使用逗号「,」来分隔模块。
在__builtins__
模块中的函数、类别等名称,都可以不用 import 直接取用,而且不用加上模块名称作为前置。
Python 编译器会在 PYTHONPATH 环境变量设置的文件夹中,寻找是否有指定模块名称对应的 .py 文件。Python 编译器会根据 sys.path 清单中的路径来寻找模块。如果想要动态地管理模块的寻找路径,也可以通过程序变更 sys.path 的内容来达到。
文件夹中一定要有一个__init__.py
文件,该文件夹才会被视为一个套件。套件名称会称为名称空间的一部分。可以建立多层次的套件,也就是套件中还会有套件,每个担任套件的文件夹与子文件夹中,各要有一个__init__.py
文件。
如果想要改变被引入模块在当前模块中的变量名称,可以使用 import as。可以使用 from import 直接将模块中指定的名称引入。
除非你是在编写一些简单且内容不长的指令稿,否则并不建议使用 from xxx import * 的方式,以免造成名称空间冲突的问题。