python模块导入
导入python模块有下面几种:
- 绝对路径导入
- 相对路径导入
- sys.path含有的路径直接导入
相对路径导入
都是通用的表示:
路径 | 表示 |
---|---|
当前目录 | ./ |
上级目录 | .. |
暂时修改sys.path
可以使用
sys.path.append(“your_path”)
sys.path.remove(“your_path”)
来暂时将your_path添加到python导入时检索的路径列表(或暂时移除)。但是这都是暂时的方法,我们可以永久修改sys.path的内容。
永久修改sys.path
sys.path的内容是其本身检索路径加上各个路径下的.pth文件构成。因此我们可以在可以检索到的位置添加.pth文件来永久改变sys.path。下面是步骤
- 查看检索路径:
cmd或者bash输入python # 打开python环境 import sys print(sys.path)
- 添加检索路径:
比如上面print内容包括"c:/users/pc/anaconda",那我们就可以在"c:/users/pc/anaconda"路径下建立一个xxx.pth文件,然后在里面写上路径。这样就永久修改了sys.path的内容
解释pth文件
解释一下pth文件:pth文件用于添加额外的sys.path即python检索路径,一般在github上下载的程序包会有一个setup.py,执行该文件会在(当前python环境下的site-packages文件夹生成)一个.pth文件。
pth files are used to add additional locations sys. path, and they are typically created by distutils setup scripts that use the (still undocumented) extra_path argument.
我试了试这样添加不支持嵌套,比如我把e:/chrome添加了路径,但是e:/chrome下的.pth文件不会被识别。不过这样能够保持安全?否则这样嵌套添加路径会带来不必要的麻烦