Python 中的参数如何按值或按引用传递?


Python 使用一种名为“按对象调用”的机制,有时也称为“按对象引用调用”或“按共享调用

如果将不可变参数(如整数、字符串或元组)传递给函数,则传递行为就像按值调用。但如果传递的是可变参数,情况就不同了。

Python 语言中所有参数 (argument) 都按引用传递。这意味着:如果你在函数内更改一个参数指向的内容,此更改在调用函数中也会反映出来。

示例

student={'Archana':28,'krishna':25,'Ramesh':32,'vineeth':25}
def test(student):
   new={'alok':30,'Nevadan':28}
   student.update(new)
   print("Inside the function",student)
   return
test(student)
print("outside the function:",student)

输出

Inside the function {'Archana': 28, 'krishna': 25, 'Ramesh': 32, 'vineeth': 25, 'alok': 30, 'Nevadan': 28}
outside the function: {'Archana': 28, 'krishna': 25, 'Ramesh': 32, 'vineeth': 25, 'alok': 30, 'Nevadan': 28}

更新于:2019-7-30

13K+ 浏览

开启你的职业生涯

完成课程以获得认证

开始
广告