在python中,会经常用到标准库,第三方库或者是自行编写的.py
文件。这些被叫做模块,本质上来说是一个子程序,它的主函数用于定义函数,类和变量。
- 保存模块
对于标准库或者是pip
下载的模块,基本上不用关心,会自动安装。而其他的,需要放置正确的位置,可以通过import sys print sys.path
查询可以放置模块的位置。再将·py
文件保存在这些地址里。
如果想将模块放在其他位置,需要告诉解释器去哪里找(设置环境变量)。首先我们可以使用import sys sys.path.append('位置')
,虽然这种方法是暂时性的,一旦解释器重启就会失效。第二种方法需要打开系统高级属性,点击环境变量,在用户变量一栏的PYTHONPATH一栏点击编辑(没有的话需要新建),加入需要的地址。(多个目录以分号隔开)
- 包及其导入
可以将一些相关的模块分组为包(package),包是另外一种模块,即包含一些模块(.py)的文件夹,为了让python将其作为包看待,必须同时包含一个命名为__init__.py的模块。比如drawing文件夹里有__init__.py,colors.py,shapes.py三个模块,它就是一个包。
import drawing
import drawing.colors
from drawing import colors
这三种分别是:导入包本身(只有__init__模块是可用的),导入colors模块(每次使用都要通过全名drawing.colors
),导入colors模块。
- 模块的使用
在导入模块之后,可以使用其在主函数中定义的函数,类和变量。
为了让模块的使用者明白其功能用法,在模块中一般会有字符串变量说明。比如说可以用colors.__all__这个变量来查看模块的公共接口(即使用时可以用的用法),这是约定俗成的格式。再比如可以使用colors.函数.__doc__,可以显示出函数定义后写的那个文档字符串。
如果想查看源代码的话,可以首先检查模块的__file__属性,它的内容是这个模块的地址,这样我们就可以使用编辑器打开相应模块了。