Python函数:在函数内部修改实参的值

来自CloudWiki
跳转至: 导航搜索

Python函数:在函数内部修改实参的值

  • 在有些情况下,可以通过特殊的方式在函数内部修改实参的值。
>>> def modify(v):          # 使用下标修改列表元素值
    v[0] = v[0]+1
>>> a = [2]
>>> modify(a)
>>> a
[3]
>>> def modify(v, item):    # 使用列表的方法为列表增加元素
    v.append(item)
>>> a = [2]
>>> modify(a,3)
>>> a
[2, 3]
  • 也就是说,如果传递给函数的实参是可变序列,并且在函数内部使用下标或可变序列自身的方法增加、删除元素或修改元素时,实参也得到相应的修改。
>>> def modify(d):         #修改字典元素值或为字典增加元素
    d['age'] = 38
>>> a = {'name':'Dong', 'age':37, 'sex':'Male'}
>>> a
{'age': 37, 'name': 'Dong', 'sex': 'Male'}
>>> modify(a)
>>> a
{'age': 38, 'name': 'Dong', 'sex': 'Male'}