進口

2017-10-04 74 views
0

這裏是我的目錄結構:進口

. 
`-- parent 
    |-- child 
    | |-- globalvar.py 
    | |-- __init__.py 
    | `-- subchild 
    |  |-- __init__.py 
    |  `-- module.py 
    `-- main.py 

在孩子目錄globalvar.py組成,我想在我的應用程序中使用全局變量:

globalvar.py

def variables(): 
     global event_id 

     event_id = 2100 

在main.py,我打電話通過進口globalvar.py初始化(child.globalvar.variables):

main.py

import child.globalvar 
from child.subchild.module import display 

child.globalvar.variables() 

display() 

以下是我在目錄subchild下我module.py文件:

from ..globalvar import variables 

def display(): 

     print globalvar.event_id 

這是回溯當我執行main.py我得到:

回溯(最近通話最後):

File "main.py", line 6, in <module> 
    display() 
    File "/parent/child/subchild/module.py", line 5, in display 
    print globalvar.event_id 
NameError: global name 'globalvar' is not defined 

我該如何解決這個問題?

回答

0

我能夠在我的module.py文件更改導入語句來解決這個問題:

BEFORE:

from ..globalvar import variables 

AFTER:

from .. import globalvar