在开发python过程中,自己往往会定义一些函数,类,变量,并且将这些对象做成一个XX.py的文件,希望以后的程序会直接
使用XX.py文件。通常情况下,我们会将XX.py的文件放在一个目录下,同时再加一个空白__init__.py文件,这样就形成了一个自定义的包。在使用这个包的时候,会有以下几种情况:
1.使用的模块或程序文件在同一个目录下,直接import就行了
例如:如果想使用xx_data_bak.zip目录下面的xx_info.py文件
import xxx_info
##如下使用
xx_info.函数1
xx_info.函数2
2.导入的模块是在主程序所在目录的子目录下,直接通过“import 子目录.模块”导入即可。
例如:*.py文件是在压缩文件xx_data.zip的子目录xx_his_data这个目录下,为了能使用**.py文件,用如下命令
import xx_his_data.xx_info as xx.info
##如下使用
xx.info.函数1
xx.info.函数2
3.导入的模块是在主程序所在目录的父目录下,则要通过修改path来解决,有两种方法:
(1)通过”import sys,sys.path.append('父目录的路径')“来改变,这种方法属于一次性的,只对当前的python解释器进程有效,关掉python重启后就失效了。
(2)直接修改环境变量:在windows中是 “ set 变量=‘路径’ ” 例如:set PYTHONPATH=‘C:\test\...’ 查看是否设置成功用echo %PYTHONPATH%,而且进到python解释器中查看sys.path,会发现已经有了新增加的路径了。这 种方式是永久的,一次设置以后一直都有效。在linux中是 "export 变量=‘路径’ “,查看是" echo $变量 "
通过修改path是通用的方法,因为python解释器就是通过sys.path去一个地方一个地方的寻找模块的。