zoukankan      html  css  js  c++  java
  • python_形参何时影响实参

    §对于绝大多数情况下,在函数内部直接修改形参的值不会影响实参。例如:

    >>> def addOne(a):

      print(a)

      a += 1

      print(a) 

    >>> a = 3

    >>> addOne(a)

    3

    4

    >>> a

    3

    §在有些情况下,可以通过特殊的方式在函数内部修改实参的值,例如下面的代码。

    >>> 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'}

  • 相关阅读:
    oracle用户和权限
    oracle中的索引
    oracle中的序列
    oracle中的视图
    oracle PL/SQL块
    oracle创建表案列
    半导体随机存储器
    IEEE754标准
    定点数的移位操作
    真值,原码,反码以及补码和移码总结
  • 原文地址:https://www.cnblogs.com/cmnz/p/6927260.html
Copyright © 2011-2022 走看看