本文解决python中比较令人困惑的一个小问题:传递到函数中的参数若在函数中进行了重新赋值,对于函数外的原变量有何影响.看一个小栗子: def fun(a): a=2 return a=1 fun(a) 请问程序执行后,a=1还是2?并解释原因. 实际上,这个问题有两个比较tricky的地方: 1. python的变量是没有类型的,类型属于对象.也就是说当我们操作x=6的时候,6是一个int类型的对象,而x就是个名字,其指针指向6这个对象.除此之外,x可以指向任何类型的对象,哪怕先后指向不同类型…