国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python探索之修改Python搜索路徑

2020-01-04 16:39:12
字體:
來源:轉載
供稿:網友

當Python執行import語句時,它會在一些路徑中搜索Python模塊和擴展模塊。可以通過sys.path查看這些路徑,比如:

>>> import sys >>> sys.path ['', '/usr/lib/python2.7/site-packages/demo_nova_hooks-5-py2.7.egg', '/usr/lib64/python27.zip', '/usr/lib64/python2.7', '/usr/lib64/python2.7/plat-linux2', '/usr/lib64/python2.7/lib-tk', '/usr/lib64/python2.7/lib-old', '/usr/lib64/python2.7/lib-dynload', '/usr/lib64/python2.7/site-packages', '/usr/lib64/python2.7/site-packages/gtk-2.0', '/usr/lib/python2.7/site-packages'] 

其中的空字符串表示當前工作目錄。

         當安裝第三方模塊的時候,如果不是按照標準方式安裝,則為了能夠引用(import)這些模塊,必須將這些模塊的安裝路徑添加到sys.path中,有以下幾種方法:

         1:最簡單的方法,是在sys.path的某個目錄下添加路徑配置文件,最常見的就是在…/site-package/目錄下。路徑配置文件的擴展名是”.pth”,其中的每一行包含一個單獨的路徑,該路徑會添加到sys.path列表中(已驗證)。”.pth”中的路徑既可以是絕對路徑,也可以是相對路徑,如果是相對路徑,則是相對于包含”.pth”文件的路徑而言的。

         2:另一種方法就是在Python標準庫中修改site.py文件,并編輯sys.path。除非使用了-S開關選項,否則site.py在Python解釋器加載時會自動被引入(執行),作用是加載site-packages中的包和模塊到python的sys.path里面。所以,可以編輯site.py,然后加上下面的兩行內容即可:

import sys sys.path.append('/xxx/xxxxx/') 

3:有兩個環境變量可以編輯sys.path。 PYTHONHOME會改變prefix和exec_prefix的值,默認情況下prefix和exec_prefix都是/usr/local。庫搜索路徑就是prefix/lib/pythonversion 和 exec_prefix/lib/pythonversion。

如果設置PYTHONHOME為單獨的路徑,則該路徑會替換prefix和exec_prefix的值,如果需要prefix和exec_prefix的值不同,則置PYTHONHOME為”prefix:exec_prefix”。比如如果將PYTHONHOME設置為”/www/python”,則sys.path就會變為
['', '/www/python/lib/pythonX.Y/', '/www/python/lib/pythonX.Y/plat-linux2', ...].

注意,修改了PYTHONHOME后,系統可能因找不到site模塊而無法啟動python解釋器,所以,除非特別需求,不要修改該變量。

[root@localhost ~]# python ImportError: No module named site 

PYTHONPATH 環境變量指定的一系列路徑,會添加到sys.path中。比如如果PYTHONPATH設置為”/www/python:/opt/py”的話,則sys.path會以 ['/www/python','/opt/py'].開頭。注意這些路徑必須存在,因為site模塊會將不存在的路徑刪除。

總結

關于Python修改路徑的問題,就先介紹到這里,以后如果有什么好的關于Python的文章,會第一時間分享給大家。有什么問題可以隨時留言,歡迎大家交流參考。

追逐夢想的路上,我已然遲到了許多年,現在,該上車了。。


注:相關教程知識閱讀請移步到python教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 潮安县| 黎城县| 商丘市| 龙井市| 中江县| 腾冲县| 垫江县| 曲松县| 正宁县| 峨眉山市| 汽车| 墨玉县| 扎鲁特旗| 临朐县| 兖州市| 中西区| 永德县| 朝阳市| 天津市| 甘孜县| 全州县| 永嘉县| 同德县| 八宿县| 保靖县| 阳新县| 武定县| 阿鲁科尔沁旗| 绥中县| 诏安县| 双峰县| 南漳县| 南川市| 西乌| 秦皇岛市| 临汾市| 旬阳县| 濉溪县| 扎囊县| 盐山县| 万年县|