函数默认值改变时,调用的例子
Posted caodneg7
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了函数默认值改变时,调用的例子相关的知识,希望对你有一定的参考价值。
# 如果默认值参数是一个可变的数据类型, 如果有人调用的时候改变了他. 其他位置看到的也跟着改变了
# def extendList(val, list=[]):
# list.append(val)
# return list
# list1 = extendList(10)
# print(‘list1=%s‘ % list1) # list = [10]
#
# list2 = extendList(123, [])
# print(‘list2=%s‘ % list2) #
#
# list3 = extendList(‘a‘) # list = [10, ‘a‘]
# print(‘list3=%s‘ % list3)
# list1=[10]
# list2=[123]
# list3=[10, ‘a‘] 结果
def extendList(val, list=[]):
list.append(val)
return list
list1 = extendList(10)
list2 = extendList(123, [])
list3 = extendList(‘a‘) # list = [10, ‘a‘]
print(‘list1=%s‘ % list1) # list = [10]
print(‘list2=%s‘ % list2) #
print(‘list3=%s‘ % list3)
#结果
# list1=[10, ‘a‘]
# list2=[123]
# list3=[10, ‘a‘]
以上是关于函数默认值改变时,调用的例子的主要内容,如果未能解决你的问题,请参考以下文章
为啥传递给函数的协议默认值不会改变,即使函数在子类化时会改变?