轉自:http://blog.csdn.net/yjk13703623757/article/details/70237463
python模塊是”從下到上”導入(import)的。
例如:
a.py(模塊a)
def aaa(): print('it is aaa')
b.py(模塊b)
def bbb(): print('it is bbb')
c.py(模塊c)
def ccc(): print('it is ccc')
main.py(主模塊,即運行的主程序)
from a import * from b import * from c import * def do(): print 'it is main module'
若c.py中有函數要調用a模塊中的方法,我們不能認為全部方法已經import到主模塊里,就可互相調用了。
其實不然,我們一定要在c.py中加句from a import *
這樣,c.py的函數才可調用a.py的。
而在主模塊里,就不用再加from a import *
,因為a模塊被引用到c模塊,c模塊又被引用到main中,a模塊也就”跟進來”了。
但是python是”從下到上”引用的,因此定義在main.py或主模塊里的方法,不能被a.py,b.py,c.py中的函數引用,因為main.py在最上層。