参数不更改variab的Python函数

2024-04-24 06:00:33 发布

您现在位置:Python中文网/ 问答频道 /正文

如何获得此函数:

def test(var1):
    var1=5
a=0
test(a)
print(a)

将变量a设置为等于5。你知道吗


Tags: 函数testdefprintvar1
3条回答

您必须使用可变变量,例如列表。这有点类似。你知道吗

def test(var1):
    var1[0]=5
a=[0]
test(a)
print(a[0])

是的…布拉德是对的…但是有一个小小的修正。我们应该说它是可变的对象。当你使用一个易变的对象,比如List,Dictionary,你将实现这一点。。你知道吗

>>> def test(var1):
...  var1.append(5)
 ...
>>> a=[]
>>> test(a)
>>> a
[5]

然而,当您使用不可变的对象(如integer、string、tuple)时,它不会更改对象引用的值。你知道吗

>>> def test(val1):
...  val1+(1,)
...
>>> test(a)
>>> a
()

您可能希望返回值:

def test(var1):
    var1 = 5
    return var1
a = 0
a = test(a)
print(a)

相关问题 更多 >