Python:模块导入路径

当使用Python用import导入模块时我们不需要在模块前面添加路径,是因为Python有默认的搜索路径,这一路径可以通过调用system模块来显示和修改。

In [1]: import sys

In [2]: sys.path
Out[2]: 
['',
 '/home/frank/anaconda3/bin',
 '/home/frank/anaconda3/lib/python36.zip',
 '/home/frank/anaconda3/lib/python3.6',
 '/home/frank/anaconda3/lib/python3.6/lib-dynload',
 '/home/frank/anaconda3/lib/python3.6/site-packages',
 '/home/frank/anaconda3/lib/python3.6/site-packages/IPython/extensions',
 '/home/frank/.ipython']

我们可以看到sys.path是一个列表,当需要导入一个模块的时候,python依次搜索列表内的各个路径。如果我们想要增加一个路径,只需要使用append()方法即可。

In [3]: sys.path.append("/home/frank/Desktop")

In [4]: sys.path
Out[4]: 
['',
 '/home/frank/anaconda3/bin',
 '/home/frank/anaconda3/lib/python36.zip',
 '/home/frank/anaconda3/lib/python3.6',
 '/home/frank/anaconda3/lib/python3.6/lib-dynload',
 '/home/frank/anaconda3/lib/python3.6/site-packages',
 '/home/frank/anaconda3/lib/python3.6/site-packages/IPython/extensions',
 '/home/frank/.ipython',
 '/home/frank/Desktop']

删除使用remove()

In [9]: sys.path.remove("/home/frank/Desktop")

In [10]: sys.path
Out[10]: 
['',
 '/home/frank/anaconda3/bin',
 '/home/frank/anaconda3/lib/python36.zip',
 '/home/frank/anaconda3/lib/python3.6',
 '/home/frank/anaconda3/lib/python3.6/lib-dynload',
 '/home/frank/anaconda3/lib/python3.6/site-packages',
 '/home/frank/anaconda3/lib/python3.6/site-packages/IPython/extensions',
 '/home/frank/.ipython']

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章