首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >del语句的功能

del语句的功能
EN

Stack Overflow用户
提问于 2021-05-20 19:50:51
回答 1查看 41关注 0票数 2

我想知道为什么如果我将多个字符的字符串拆分成一个列表,那么只有将列表保存到一个新对象中,del函数才能工作?示例:

代码语言:javascript
复制
x = 'Hello world'
del x.split()[0]
print(x)
out: Hello world
代码语言:javascript
复制
y = x.split()
del y[0]
print(y)
out: ['world']
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-05-20 19:53:22

首先,x.split()创建一个完全独立于x的列表(甚至忽略str值不可变的事实);修改该列表不会以任何方式影响x

其次,您没有保存对x.split()返回的列表的引用,因此即使del x.split()[0]确实改变了该列表,一旦语句完成,整个列表也会受到垃圾收集的影响。

在第二个示例中,您确实有一个对x.split(0)的返回值的引用,因此您可以观察del的结果。

票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67627090

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档