#conf.py
def init():
global mylist
mylist=[]
#change.py
import conf
def change():
if __name__ == "__main__":
print('Direct')
conf.mylist.append('Directly executed')
print(conf.mylist)
else:
conf.mylist.append('It was imported')
#exec.py
import conf
import change
conf.init()
change.change()
print (conf.mylist)
当运行 exec.py 时,结果是我预期的,但是当直接运行 change.py 时,我没有得到任何输出(没有 Direct ,没有 conf.mylist)
请您参考如下方法:
是的,这是正常行为。您需要调用 change 函数才能执行此代码。
您可以将以下内容添加到 change.py 的末尾
if __name__=="__main__":
change()
