Ho un pacchetto hello1 che contiene il modulo good.py.È possibile accedere alle variabili in __init__.py dai moduli nello stesso pacchetto?
hello1
├── __init__.py
└── good.py
Il modulo init ha una variabile A = 1
, e ho bisogno di accedere al hello1.A variabile good.py.
import hello1
class Good(object):
def __init__(self):
print hello1.A
if __name__ == "__main__":
g = Good()
Il problema è che quando eseguo lo script python ho l'errore ImportError: 'No module named hello1'
. Potrei aggiungere import sys; sys.path.append("..")
alla prima riga di good.py
per una soluzione rapida.
Tuttavia, il file good.py è nel pacchetto hello1 in cui è presente anche __init__.py, quindi mi chiedo se esiste un modo per accedere alle variabili in __init__.py dai moduli nello stesso pacchetto.
Hai provato a passare alla directory contenente 'hello1' ed eseguendo lo script con' python hello1 \ good.py'?Inoltre, potresti trovare una risposta qui: http://stackoverflow.com/questions/436497/python-import-the-contain-package – flornquake