[英]How does this Python import work?
我在同一目錄中有兩個文件,並且任何地方都沒有__init__.py
文件:
c:\work\test>tree
.
|-- a
| `-- a
| |-- a1.py
| `-- a2.py
`-- b
一個文件導入另一個文件:
c:\work\test>type a\a\a1.py
print 'a1-start'
import a2
print 'a1-end'
c:\work\test>type a\a\a2.py
print 'a2'
即使從完全不同的位置運行,導入也會成功:
c:\work\test\b>python ..\a\a\a1.py
a1-start
a2
a1-end
我在跑
c:\work\test>python -V
Python 2.7.3
並且我的PYTHONPATH和PYTHONHOME變量未設置
c:\work\test>echo %PYTHONPATH% %PYTHONHOME%
%PYTHONPATH% %PYTHONHOME%
a1.py
如何找到a2
?
來自模塊文檔的報價(重點是我的):
“導入名為spam的模塊時,解釋器首先搜索具有該名稱的內置模塊。如果找不到,則解釋器將在變量sys.path給出的目錄列表中搜索名為spam.py的文件。 sys.path從以下位置初始化:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.