def convert(target):
#Some code here
target = 20
convert(x)
print(x)
我希望输出为20,但始终会出现错误。 “ NameError:未定义名称x”有什么办法可以解决?
答案 0 :(得分:-1)
这听起来像是您试图通过引用传递值,这与Python的规则相反,后者通过赋值传递变量。正如其他人所建议的那样,最简单的“解决方案”是重构代码,使其返回新值。
在某些语言(例如PHP)中,您可以指定某些参数要通过引用传递(例如,通过在变量名前加上“&”前缀),但是在实践中,这通常会使代码难以阅读和调试。
有关更多信息,请参见: How do I pass a variable by reference?