微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Python函数不更改变量

如何解决Python函数不更改变量

我是一名C ++程序员,正在学习pygame,所以我对python非常陌生。我注意到函数的这种行为,并且不知道该怎么做:

假设我们有一个全局变量

x = 10

现在,我们有一个可以更改x值的函数

def foo():
    x = 100

现在,在我的主要pygame循环中,如果我调用foo(),则函数调用后变量x仍为10。这是怎么回事?

解决方法

在函数内部,x的局部作用域值已更改。函数外部定义的x具有全局范围。要更改全局值,请在更新值之前尝试函数中的<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width,initial-scale=1.0"> <title>Document</title> </head> <body> <div> <h1>Sign Up</h1> </div> <form action="/signUp" method="POST"> <input type='text' name="email" placeholder="Email Address" autofocus required> <input type='password' name="password" placeholder="Password" required> <input type='password' name="confirm_password" placeholder="Confirm Password" required> <button type="submit" value="Sign Up">Next</button> </form> </body> </Html>语句

global var_name
,

在函数内部,您隐式创建了另一个变量x,然后将其设置为100。要更改全局变量,请尝试以下操作:

 def foo(): 
              global x
              x = 100

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。