ubuntu下Python导入自定义模块的方法

当在python程序中导入自定义模块时,若出现“Import Error:no module named xxx”表明系统在python的搜索路径(PYTHONPATH)中找不到该模块,需要把该模块添加到python的搜索路径中。

要用import mymodule导入自定义的模块,其必须在python的搜索路径中,一般有三种方法可以采用:

1.将你自定义的模块(.py文件)放置在python的任意搜索路径下(可以在python中输入import syssys.path 查看搜索路径)

2.修改环境变量PYTHONPATH以包含用户自定义模块的路径

  • 临时修改:在终端输入export PYTHONPATH=/mymodule directory:$PYTHONPATH
    ,利用echo $PYTHONPATH 命令可查看是否将路径添加成功。该方法在当前终端下有效,但若关闭终端后重新打开,则会失效。
  • 彻底修改:要想使修改始终有效,则需要修改用户或系统的环境变量配置文件。以修改用户的环境变量配置文件.bashrc或.profile为例(两个文件均在用户主目录下/home/用户名,.bahsrc包含专用于你的bash shell的bash信息,当登录以及每次打开新的shell时,该文件被读取;.profile包含专用于你的shell信息,当用户登录时,该文件仅仅执行一次,它设置一些环境变量,执行用户的.bashrc文件)。cd到用户主目录下,打开.bashrc或.profile文件,在末尾添加一行export PYTHONPATH=/mymodule directory:$PYTHONPATH,保存退出后,执行source .bashrcsource .profile命令使修改生效。修改系统环境变量配置文件的过程也类似,只不过相应的文件要到/etc 目录下去找。

3.修改python的sys.path变量,在导入自定义模块前,执行以下操作。此方法也只能临时起作用,退出python下次再进来就失效了。

import sys
sys.path.append('mymodule directory')

参考:
1.How modules are found and imported
2.LINUX让环境变量立即生效的方法

你可能感兴趣的:(Python编程)