import和from...import*为什么执行的不一样啊

test1

a = 0

def B():

    global a
    a += 1

 test2

import test1

test1.B()
print(test1.a)

test3

from test1 import *

B()
print(a)

为什么 test2 的执行结果是  1,

test3 的执行结果是  0  ?

from test1 import *导入只会导入所有变量,并且各个变量互不相关,所以变量的值后面发生变化是不会改变的。import test1是将test1当一个整体,只要内部变化了就会变化。

如果对你有帮助,可以点击我这个回答右上方的【采纳】按钮,给我个采纳吗,谢谢

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632