首页 新闻 会员 周边 捐助

所以函数内只要有赋值,赋值左边变量就是局部变量

0
[已关闭问题] 关闭于 2025-09-10 22:27

是的,在函数内部只要对变量有赋值操作,Python 就会把它当作局部变量,除非你用 global 或 nonlocal 显式声明。

 

x = 10

def foo():
    x = 5 # 这是新的局部变量 x,和外部的 x=10 无关

foo()
print(x) # 输出 10,全局 x 没被改

 

x = 10

def bar():
   print(x) # 报错!UnboundLocalError: local variable 'x' referenced before assignment

    x = 5 # 因为有赋值,Python 把 x 当作局部变量

_java_python的主页 _java_python | 小虾三级 | 园豆:984
提问于:2025-09-10 22:27
< >
分享
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册