前兩天被一個同事問了一個python的問題:
為什么一個目錄里的python文件引用不要另一個兄弟目錄的python文件,但是這兩個目錄的父母錄運行時是可以引用到了。當時感覺一直是模塊和包的機制問題,回來翻了一下書,發現是引用路徑的問題,記錄一下。
在python中我們import模塊時,系統會在python的引用路徑下去查找這個模塊文件, 這個引用路徑是在編譯或者安裝的時候指定的,可以在兩個地方進行修改:
- shell的PYTHONPATH環境變量,系統會在這個變量的目錄中進行查找。
- 在python程序中可以通過sys.path列表來進行修改
被別人問到,才發現我python是入門級別的,要多學習一下。以前自己使用時,都是只管用,沒有想過后面的底層機制,不求甚解,還是要多總結一下。