Python 将未定义的变量传递给函数并返回该变量的值
因此,我试图将一个变量传递给一个尚未定义的函数。我想让函数给这个变量分配一个新值,并对它做一些处理,然后返回这个变量。然后我想在函数之外使用这个变量,因为它现在应该被定义了。 我意识到这个例子并不是最好的,因为你可以通过创建一个变量并添加5来做同样的事情,但我想知道你是否真的可以像我尝试过的那样做Python 将未定义的变量传递给函数并返回该变量的值,python,Python,因此,我试图将一个变量传递给一个尚未定义的函数。我想让函数给这个变量分配一个新值,并对它做一些处理,然后返回这个变量。然后我想在函数之外使用这个变量,因为它现在应该被定义了。 我意识到这个例子并不是最好的,因为你可以通过创建一个变量并添加5来做同样的事情,但我想知道你是否真的可以像我尝试过的那样做 def age_in_5_years(person_age, age): person_age = value + 5 return person_age age_in_5_year
def age_in_5_years(person_age, age):
person_age = value + 5
return person_age
age_in_5_years(my_age, 20)
age_in_5_yearsr(dads_age, 50)
print(my_age) # expecting: >>>25
print(dads_age) # expecting: >>>55
# what I get >>> NameError: name 'my_age' is not defined
您不能,但您可以这样做:
def age_in_5_year(年龄):
返回年龄+5
我的年龄=5年内的年龄(20)
父亲的年龄=5年内的年龄(50)
打印(我的年龄)
印刷品(爸爸时代)
这样做没有意义。您可以通过以下方式解决此问题:
def age_in_5_years(age):
age += 5
return age
my_age = age_in_5_years(20)
dads_age = age_in_5_yearsr(50)
print(my_age) # expecting: >>>25
print(dads_age) # expecting: >>>55
这不是Python的工作方式。我强烈建议你多读一些关于数据类型、变量和函数的内容,但你不能。只需返回您想要的,并显式地分配返回的值。您不能将未定义的变量传递给函数full stop。不存在的东西怎么可能被传递?是的,基本上是一样的。我应该想到这个。。。不过非常感谢!