python 函数 可变数据类型默认值

def extendList(val,list=[]):
       list.append(val)
       return list
    list1 = extendList(10)
    list2 = extendList(123,[])

 list3 = extendList('a')

    print('list1=%s'%list1)
    print('list2=%s'%list2)
    print('list3=%s'%list3)

# 如果默认值参数是一个可变的数据类型, 如果有人调用的时候改变了他. 其他位置看到的也跟着改变了
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)
print('list1=%s' % list1) 
 
原文地址:https://www.cnblogs.com/beihan/p/9325367.html