【发布时间】:2021-08-10 02:29:27
【问题描述】:
我想知道为什么如果我将一个包含多个字符的字符串拆分为一个列表,那么del 函数只有在我将列表保存到一个新对象时才有效?
示例:
x = 'Hello world'
del x.split()[0]
print(x)
out: Hello world
y = x.split()
del y[0]
print(y)
out: ['world']
【问题讨论】:
-
@Matthias 抱歉,已更新
-
你不能改变一个 str,它们是“不可变的”。您可以更改列表,它们是“可变的”。
del x.split()[0]语句首先创建了一个列表,然后它删除了列表中的第一个元素,然后这个列表被遗忘了,因为没有对它的引用。编辑:嗯,是的,切普纳在他的回答中说了什么。