发布网友 发布时间:2022-05-03 10:06
共3个回答
热心网友 时间:2022-04-18 03:58
Python函数在定义的时候,默认参数L的值就被计算出来了,即[],因为默认参数L也是一个变量,它指向对象[],每次调用该函数,如果改变了L的内容,则下次调用时,默认参数的内容就变了,不再是函数定义时的[]了。修改一下试试
def f(a, L=[]):
热心网友 时间:2022-04-18 05:16
因为L不是每次调用都是[ ],第一次后变为[1],第二次变为[1,2],第三次变为[1,2,3]热心网友 时间:2022-04-18 06:50
append()并不创建新的列表,就像排队一样,假设一个队伍,起名叫L,那么每运行一次L.append(a),就好比在队伍最后多排一个人,但是队伍的名字还是叫L,而且多了一个人,除非你用L=[另一个队伍],把L这个名字给另外一个队