gpt4 book ai didi

python - 为什么输出不是 1 和 1?

转载 作者:行者123 更新时间:2023-12-03 17:22:48 25 4
gpt4 key购买 nike

这个问题在这里已经有了答案:





Weird scoping behavior in python

(1 个回答)


8 个月前关闭。



a = 0
b = 0
def test():
a = 1
b = 1

class Test:
print(a, b)
a = 2
test()
它给
0 1
它应该是
1 1
为什么会这样?

最佳答案

test函数,你实际上并没有初始化一个新的 Test对象,因此 Python 将通读类定义以在函数作用域内使用它,因此它确实执行了打印语句。问题是您正在尝试更改 a 的值在类范围内,这会生成一个取 a 的先前值在函数定义之外。

关于python - 为什么输出不是 1 和 1?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65913970/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com