2024-03-30 03:19:20 发布
网友
我一直试图在变量中的函数中返回一个变量并在它之外使用它:
test = 0 def testing(): test = 1 return test testing() print(test)
但当我运行它时,结果是0。我怎样才能解决这个问题?
你把范围和/或任务搞砸了。试试这个:
def testing(): test = 1 return test test = testing() print(test)
说明:模块内部的test与模块内部的test不同。必须在模块级分配它才能获得预期的结果。
test
在函数testing()中,您正在创建一个新变量test,而不是指已经存在的变量。如果要这样做,应该在顶部使用global语句,如下所示:
testing()
global
def testing(): global test ...etc...
因为您在函数中声明了test,所以它不是全局变量,因此,您不能访问在函数外部创建的变量test,因为它们是不同的作用域
如果要return test到变量,必须
return test
result = testing() print(result)
或者,您还可以添加global语句:
test = 0 def testing(): global test test = 1 return test testing() print(test)
顺便说一下,在执行条件语句时,不需要在1==1左右加括号。
1==1
你把范围和/或任务搞砸了。试试这个:
说明:模块内部的
test
与模块内部的test
不同。必须在模块级分配它才能获得预期的结果。在函数
testing()
中,您正在创建一个新变量test
,而不是指已经存在的变量。如果要这样做,应该在顶部使用global
语句,如下所示:因为您在函数中声明了
test
,所以它不是全局变量,因此,您不能访问在函数外部创建的变量test
,因为它们是不同的作用域如果要
return test
到变量,必须或者,您还可以添加
global
语句:顺便说一下,在执行条件语句时,不需要在
1==1
左右加括号。相关问题 更多 >
编程相关推荐