参考文章Python导入自定义模块
当在python程序中导入自定义模块时,若出现“Import Error:no module named xxx”表明系统在python的搜索路径(PYTHONPATH)中找不到该模块,需要把该模块添加到python的搜索路径中。
要用import mymodule
导入自定义的模块,其必须在python的搜索路径中,一般有三种方法可以采用:
1.将你自定义的模块(.py文件)放置在python的任意搜索路径下(可以在python中输入import sys
和sys.path
查看搜索路径)
#所有能被加载的模块均在这个列表中。
type(sys.path):list
2.修改环境变量PYTHONPATH以包含用户自定义模块的路径
(1)临时修改:在终端输入export PYTHONPATH=/mymodule directory:$PYTHONPATH
,利用echo $PYTHONPATH
命令可查看是否将路径添加成功。该方法在当前终端下有效,但若关闭终端后重新打开,则会失效。
(2)彻底修改:要想使修改始终有效,则需要修改用户或系统的环境变量配置文件。以修改用户的环境变量配置文件.bashrc
或.profile
为例(两个文件均在用户主目录下/home/用户名,.bahsrc包含专用于你的bash shell的bash信息,当登录以及每次打开新的shell时,该文件被读取;.profile包含专用于你的shell信息,当用户登录时,该文件仅仅执行一次,它设置一些环境变量,执行用户的.bashrc文件)。cd到用户主目录下,打开.bashrc或.profile文件,在末尾添加一行export PYTHONPATH=/mymodule directory:$PYTHONPATH
,保存退出后,执行source .bashrc
或source .profile
命令使修改生效。修改系统环境变量配置文件的过程也类似,只不过相应的文件要到/etc 目录下去找。
(3)修改python的sys.path变量,在导入自定义模块前,执行以下操作。此方法也只能临时起作用,退出python下次再进来就失效了。
import sys
sys.path.append(‘mymodule directory’)