第1个回答 2020-02-07
要知道一个对象与变量名的关系。在python中变量名与对象是不同的东西。一般来说,通过赋值语句会生成一个对象,但这个对象一般不能直接使用,需要通过一个引用来使用它,即给它一个名字。也就是等号左边是一个变量名,右边是生成对象的代码,因此在执行这条赋值语句后就存在了两个东西,一个是名字,一个是对象。在Python中把名字与变量关联起来叫绑定。因此在后面你如果继续对同一个变量名赋值的话,其实是实现了对变量名与新对象的重新绑定,在Python中这是允许的,原来绑定的对象如果无人再使用就自动回收,否则就将引用计数减一。而这个对象是无法改变类型了。因此你上面的a是变量名,后面才是对象的定义。不知道你是否理解。