Python中的变量并不直接存储值,而是存储了值的内存地址或者引用,假如为不同变量赋值为相同值,这个值在内存中只有一份,多个变量指向同一块内存地址。
对于C语言来讲,我们创建一个变量A时就会为为该变量申请一个内存空间,并将变量值放入该空间中,当将该变量赋给另一变量B时会为B申请一个新的内存空间,并将变量值放入到B的内存空间中,这也是为什么A和B的指针不一致的原因
例如:
x=100 y=x print(id(x),id(y))
out:1366822448 1366822448
Python中的变量并不直接存储值,而是存储了值的内存地址或者引用,假如为不同变量赋值为相同值,这个值在内存中只有一份,多个变量指向同一块内存地址。
对于C语言来讲,我们创建一个变量A时就会为为该变量申请一个内存空间,并将变量值放入该空间中,当将该变量赋给另一变量B时会为B申请一个新的内存空间,并将变量值放入到B的内存空间中,这也是为什么A和B的指针不一致的原因
例如:
x=100 y=x print(id(x),id(y))
out:1366822448 1366822448