从列表元素中删除项目?

时间:2016-08-01 17:24:23

标签: python list python-3.x

这可能看起来很奇怪,但我试图删除列表中包含的项目的一部分。基本上,我试图从多个列表元素中删除特定字符。例如

list = ['c1','c2','c3','d1','s1']
list.remove('c')

我知道这样做不会起作用,但有没有办法删除列表中的" c"以及只有Python中的" c" s 3?

3 个答案:

答案 0 :(得分:4)

lst = [s.replace('c','') for s in lst]
# ['1','2','3','d1','s1']

列表理解是你的朋友。另请注意,“list”是Python中的关键字,因此我强烈建议您不要将其用作变量名。

答案 1 :(得分:2)

使用列表推导,

list = ['c1','c2','c3','d1','s1']

list_ = [ x for x in list if "c" not in x ]  # removes elements which has "c"
print list_  # ['d1', 's1']

答案 2 :(得分:0)

list1 = ['c1','c2','c3','d1','d2']

list2 = []

for i in range (len(list1)):
    if 'c' not in list1[i]:
        list2.append(list1[i])

print (list2) #['d1', 'd2']

此链接也可能有用

Link one