python中,如图,为啥上面?处是错误的?

在Python中,您无法通过全局变量创建一个同名的局部变量。您可以尝试在f1()函数的第一行加入如下代码:i=i*2 也会出现同样的错误,因为对于f1()函数来说,变量i已经是全局变量,无法通过全局变量创建一个同名的局部变量。总的来说就是同名的全局和局部变量的操作,不能够冲突,否则Python解释器无法辨别...
python中,如图,为啥上面?处是错误的?
因为上面的“x+=x”相当于在f2()函数中通过操作变量x得到变量x。
然而,f2()函数属于函数f1(),那么对于f2()函数来说,f1()函数中的变量也相当于f2()函数的全局变量,因此,f1()函数的变量x,就是相对于f2()函数的“全局变量”。
在Python中,您无法通过全局变量创建一个同名的局部变量。您可以尝试在f1()函数的第一行加入如下代码:
i=i*2
也会出现同样的错误,因为对于f1()函数来说,变量i已经是全局变量,无法通过全局变量创建一个同名的局部变量。
总的来说就是同名的全局和局部变量的操作,不能够冲突,否则Python解释器无法辨别和赋值变量。
2021-07-30
mengvlog 阅读 6 次 更新于 2025-07-18 09:27:26 我来答关注问题0
檬味博客在线解答立即免费咨询

Python相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部