循环导入模块
#m1.py# 错误示范
'''
print('正在导入m1')
from m2 import y #第一次导入m2
x='m1'
'''
解决方案一: 把循环导入的语句放到名字定义的后面
print('正在导入m1')
x='m1'
from m2 import y #第一次导入m2
解决方案二: 将循环导入语句放到函数内
print('正在导入m1')
def f1():
from m2 import y,f2 #第一次导入m2
print('m1.f1---->y: ',y)
f2()
x='m1'
==================================================================================================
#m2.py
# 错误示范
'''
print('正在导入m2')
from m1 import x
y='m2'
'''
# 解决方案一: 把循环导入的语句放到名字定义的后面
# print('正在导入m2')
#
# y='m2'
#
# from m1 import x
# 解决方案二: 将循环导入语句放到函数内
print('正在导入m2')
def f2():
from m1 import x
print('m2.f2--->x: ',x)
y='m2'
总结 :两种解决方案
一: 解决方案一: 把循环导入的语句放到名字定义的后面
二: 解决方案二: 将循环导入语句放到函数内