Python .replace()重新分配多个变量

时间:2016-09-14 16:28:03

标签: python str-replace

这是一个具体的概念性问题,我还没有看到有人问这个问题。当使用Python的内置.replace()函数重新分配列表元素时,我发现不仅重新分配了所需的列表,而且还重新分配了它所源自的原始列表。 。最好用一个例子来解释这个:

> x = ['apple','banana','potato']
> y = x
> print x;print y
 ['apple','banana','potato']
 ['apple','banana','potato']

现在,如果我尝试使用.replace()重新分配y元素,它也会重新分配给x

> y[0] = y[0].replace('e','3')
> print x; print y
 ['appl3','banana','potato']
 ['appl3','banana','potato']

现在我丢失了原来的x变量,我想保留它。任何人都可以解释为什么会发生这种情况和/或如何避免这种情况?

0 个答案:

没有答案