Ich habe eine vm.py
im selben Verzeichnis wie das main()
Skript (getdata.py
). In getdata.py
habe ichPython-Module (Modulname vor der Zuweisung referenziert)
import vm
...
x = vm.Something()
Dann Python
UnboundLocalError: local variable 'vm' referenced before assignment
Warum beschwert ist das? Beim Importieren ist kein Fehler aufgetreten.
UPDATE
fand ich, dass, wenn ich
tatfrom vm import *
Stattdessen hat es funktioniert. Auch für eine andere Datei/Modul I gemacht, eine einfache import
funktioniert. Ich habe den vollständigen Code auf GitHub Gist hochgeladen https://gist.github.com/2259298
Von selbst, das sollte funktionieren. Wahrscheinlich gibt es andere Hinweise auf vm in Ihrem Code, den Sie ausschneiden im '...' Teil, weil Sie nicht denken, dass sie relevant waren, aber in Wirklichkeit waren sie. Siehe zB [diese Frage] (http://stackoverflow.com/questions/1188944/reason-for-unintuitive-unboundlocalerror-behaviour) oder [dieser] (http://stackoverflow.com/questions/404534/ Python-Globals-Locals-und-unboundlocalerror). – DSM
@DSM, aktualisiert Post mit Beobachtungen und vollständigen Code auf Kern (https://gist.github.com/2259298) –
Kommandozeilenargumente sind nie in Kamel Fall getan; '--numReferences' würde in der Regel als' --num-references' oder '--references' erfolgen. –