首页 > 解决方案 > 为什么在python中拆分后列表中的下一个项目消失了

问题描述

我有一份清单。然后,我想检测列表中的任何“和”,然后我应该在“和”之间拆分项目并将两者放入一个新列表中。

问题是,在我进行拆分后,下一个项目将从列表中消失。例如,我有一个列表:

liss1=['a','b','c','d and e','f','g','h']

拆分并删除当前项后,下一项“f”从列表中消失,如下所示:

item 0 a
item 1 b
item 2 c
item 3 d and e
item 4 g
item 5 h
Unique_liss ['a', 'b', 'c', 'd ', ' e', 'g', 'h']

这是我的代码:

liss1=['a','b','c','d and e','f','g','h']
Unique_liss=[]
for i,item in enumerate(liss1):
    print('item',i,item)
    if 'and' in item:
        liss1.remove(item)
        split_elem_dan = item.split('and')
        for s in split_elem_dan:
            Unique_liss.append(s)
    else:
         Unique_liss.append(item)
print()
print('Unique_liss',Unique_liss)

有没有人知道如何改进?这样,下一个项目将保留在列表中

标签: pythonlistsplitappend

解决方案


改变

for i,item in enumerate(liss1):

for i,item in enumerate(liss1.copy()):

推荐阅读