Ich habe zwei Dateien im selben Verzeichnis, und es gibt keine __init__.py
Dateien überall:Wie funktioniert dieser Python-Import?
c:\work\test>tree
.
|-- a
| `-- a
| |-- a1.py
| `-- a2.py
`-- b
eine Datei importiert die andere:
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'
Der Import sogar gelingt es, wenn aus einem ganz anderen Ort läuft :
c:\work\test\b>python ..\a\a\a1.py
a1-start
a2
a1-end
ich bin mit
c:\work\test>python -V
Python 2.7.3
und meine PYTHONPATH und PYTHON Variablen werden nicht
c:\work\test>echo %PYTHONPATH% %PYTHONHOME%
%PYTHONPATH% %PYTHONHOME%
Wie a1.py
a2
nicht finden?
ich eine Vermutung hazzard würde, dass wie PHP, Python mehrere Standorte bewerten würde Dateien zu finden, die das aktuelle Arbeitsverzeichnis inklusive? –
Das aktuelle Arbeitsverzeichnis wird' test \ b ' ... – thebjorn
das Skript läuft von einem aber vergeben mein Mangel an Python-Wissen, aber PHP und ich glaube, die meisten Sprachen würde dieses Szenario ähnlich behandeln, wenn Sie .. das Ändern des Arbeitsverzeichnisses für das Skript nur –