如何仅在另一个python列表中的某个值之后附加到列表?
我有 2 个列表。我只想在达到指定值后附加到新列表。
old_list = ['apple', 'pear','orange', 'banana', 'grape']
new_list = []
value = 'orange'
想要的结果是:
new_list = ['banana', 'grape']
我试过这个,但结果不是我想要的:
for i in old_list:
if i != value:
new_list.append(i)
希望这是有道理的!
回答
使用list.index方法返回i中value出现的索引old_list。然后old_list从索引切片i+1到它的末尾:
old_list = ['apple', 'pear','orange', 'banana', 'grape']
value = 'orange'
i = old_list.index(value)
new_list = old_list[i+1:]
- 我的回答假设 `value` 在 `old_list` 中,否则这个问题没有意义。但是你是对的,一个简单的 try/except 或 `if value in old_list` 检查将解决这个问题。