因个人习惯,在阅读和学习文字资料时,习惯摘写笔记,因此在这里留下自己的学习记录。笔记的内容偏摘抄为主,并非自己的原创内容。
内容基于:《简明 Python 教程》Swaroop, C. H. 著沈洁元 译
(1)定义
包含了所有你定义的函数和变量的文件。
(2)注意
为了在其它程序重用模块,模块的文件名必须以.py为扩展名。
(1)sys模块(sys=system)
sys模块包含python解释器和环境相关的函数。
使用:通过 import 关键字导入模块,例 import sys(在sys.path变量中所列目录中寻找sys.py模块,若找到文件,则模块的主块中的语句被运行,然后才能被你所用,该初始化过程仅在第一次输入模块时进行)
模块的内容(变量)调用,格式 模块名.变量名 通过该形式,区别变量的来源,表明其归属哪个模块所有。
其中 sys.argv 是一个字符串列表,包含了命令行参数;sys.path包含输入模块的目录名列表。
当我们执行文件时,例 python xxxx.py 后面拼接内容,如:python xxxx.py we are atguments,则“we”"are" "arguments"会成为命令行参数的一部分(参数以空格分隔),其中第一个参数(即argv[0])为 执行的文件。
输入模块时,以.py扩展的相对较慢,因此python做了处理,以便加快输入模块的速度。其中一种方法是创建以.pcy为扩展的字节编译文件,该文件python变换程序的中间态(已完成部分输入模块所需的处理),与平台无关,用于再次输入模块。
(1)输入模块:import 模块(需以 模块名.的形式调用)
(2)直接输入模块的变量:from 模块名 import 变量名或函数名(若想使用sys模块的所有内容,则用*代替名称) ,如此一来,可直接使用相应的函数和变量(无需以 模块名.的形式调用,易导致名称冲突)
注意:from .. import...的形式不推荐(不利于程序的可读性,易造成名称冲突)
(3)先导入sys模块(import sys),再通过sys.path.append(r"模块路径") 不推荐
每个模块都有一个名称,在模块中可以通过语句来找出模块的名称。
功能实现:默认,输入模块时,该模块的主块被运行。若想程序本身被使用时运行主块,被别的模块输入时不运行。(__name__属性可实现)
例:
if
__name__ ==
'__main__'
:
print
'This program is being run by itself'
else
:
print
'I am being imported from another module'
如果执行模块自身的方式:python xxxx.py 则该模块的名称为 "__main__"
若输入模块的方式:import xxxx 则该模块的名称不为 "__main__",为“__XXXX__”
注意:每个python模块都有它的__name__
创建一个模块,实际就是创建一个python文件(.py为扩展名)
然后通过导入方式即可在别的模块使用相应的模块。