第一次调用fn(a,c),给列表a对应的形参lis添加了元素b,此时列表a变为了[1,2],同时对应的c加了1,但这次调用函数直接是f(a,c),么有用变量接收,所以函数执行结束后栈销毁,c的值么有变 ,a会变是因为他是列表,当参数时传的是地址,类似于c语言的指针。第二次调用进行了print,跟上面差不多,列表变为[1,2,2],c加了1,变为了2。有帮助的话采纳一下哦!