结论:模块在一个python解释器(一次生命周期)中,一个模块只被引入一次
验证过程
ins01 site-packages]# echo ‘print(11111)‘ > kai.py
ins01 site-packages]# echo -e ‘import kai\nprint(2222)‘ > yun.py
ins01 ~]# python3
>>> import yun
1111111
22222
>>> import kai #这里没有执行kai里面的打印语句,因为在yun.py里已经执行过了import kai
>>> import yun #同样这里也不会有任何输出
>>>
同时,import 一个模块时,模块中的代码会从头至尾执行,只不过用from xxx import yyy时,未被指定的命名不会呗带入到当前namespase中,如下图实验
原文地址:https://blog.51cto.com/kaifly/2365624
时间: 2024-10-09 15:23:52