请问什么时候给变量空间,。、

name="张三" new_name=name new_name还是指向张三 说明在打出变量名的时候没有得到空间 打出赋值符号也没有给空间 什么时候给变量空间?

只有类实例化时才会创建对象、分配内存,比如name="张三"。对一个业已存在的对象(name指向的字符串)重新分配一个变量名(new_name),叫做对象引用。对象引用不会创建新的实例,只会在该对象的引用计数器上做+1操作。一旦对象的引用计数器为0,就会被自动回收——这就是Python内存回收机制。不只是字符串这样,整型、浮点型、元组、列表、字典、集合,以及用户自定义的类,都是如此。

变量再被声明,无论是否被赋初始值,此时的变量已经再内存中开辟空间了

name="张三" new_name=name new_name还是指向张三,这表示python以给name空间,那么当格new_name赋值name时,python将new_name也指向name的地址,所以python没有给new_name开辟新空间,而是两者共用(指向)一个空间

直接用 id()函数看下变量的内存地址就知道了