![](/img/trans.png)
[英]How would I call only one variable from a function that contains multiple variables?
[英]How can I call only one variable in multi variable function?
我正在尝试学习Python3,我认为自己对代码感到困惑。 可以说我有一个使用不同变量的函数。
我怎样才能只从中调用一个变量? 我怎样才能在函数外部打印x值?
基本上,我想在函数之外使用函数的地方获取X的值,尤其是当函数中有很多变量时。
先感谢您。
def calculation():
x = 0
y = 1
a = x * y
b = x + y + y
print(a)
print(b)
return x, y
print("testing")
print(calculation(x))
当我尝试运行此代码时,它返回一个名称错误。
>Traceback (most recent call last):
>>File "test.py", line 15, in <module>
>>>print(calculation(x))
>NameError: name 'x' is not defined
使用global
关键字。 这使得它在中定义的功能之外要使用的变量。但是,你必须调用函数之前,你可以用它定义变量(一个或多个),所以你可能需要修改您的调用calculation
。
def calculation():
global x
x = 0
y = 1
a = x * y
b = x + y + y
print(a)
print(b)
return x, y
一种不同的方法是简单地将第一个值calculation
返回值分配给另一个变量,如下所示:
print("testing")
x, y = calculation()
print(x)
如果我正确理解了您的问题(基于“我怎样才能在函数外部打印x值?”)
x,y=calculation()
print(x)
如果您不在乎第二个答复,也可以
x,_=calculation()
print(x)
注意,您不必将外部变量的名称与函数内部的名称相同,即
a,_=calculation()
print(a)
也会工作
您可以使打印语句如下:
print("testing")
print(calculation()[0])
输出:
testing
0
2
1
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.