假设你有一个清单
>>> m = ['a','b','c']
我想列一个新清单n
包含除给定项目之外的所有内容m
(例如该项目'a'
)。但是,当我使用
>>> m.remove('a')
>>> m
m = ['b', 'c']
原始列表已发生变化(值'a'
从原来的列表中删除)。有没有办法获得新的列表没有-'a'
不改变原来的?所以我的意思是m
应该还是[ 'a', 'b', 'c' ]
,我会得到一个new列表,必须是[ 'b', 'c' ]
.
我假设您的意思是您想要创建一个没有给定元素的新列表,而不是更改原始列表。一种方法是使用列表理解:
m = ['a', 'b', 'c']
n = [x for x in m if x != 'a']
n
现在是一个副本m
,但没有'a'
元素。
另一种方法当然是先复制列表
m = ['a', 'b', 'c']
n = m[:]
n.remove('a')
如果通过索引删除一个值,那就更简单了
n = m[:index] + m[index+1:]
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)