Python的内存管理问题

Python的内存管理问题

问题描述:

不知道怎么说这个问题。。。。。

这样把。

首先把一个字符串赋给两个变量 然后测试一下他们内存地址 编写一个py文件
看图:
图片说明

看 加了空格也可以是True 为什么 然后我在IDLE里面直接测试:
图片说明
怎么搞的是False

。。。是编译器问题吗??
怎么愚蠢的问题,求大神轻喷。。。

这是python的优化,对于短字符串,它都会提前创建,然后大家都引用它。而IDLE中测试时。可能会重新分配。这都是可能的行为。

REPL方式下变量分配会不同。

REPL方式下变量分配会不同。

学之前了解到python是自动管理内存的,所以也没太注意这方面的问题,现在硬件都比较强大,性能上好像也没太大的差异。不过弄明白是怎么回事还是好的。