首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在找到字符串后删除列表中的所有字符串

如何在找到字符串后删除列表中的所有字符串
EN

Stack Overflow用户
提问于 2019-06-21 09:06:55
回答 2查看 61关注 0票数 -1

如果我有一个列表:

代码语言:javascript
复制
my_list = ['hey', 'how are', 'you', 'Bob', 'Jim']

我想从列表中删除以下所有元素:

代码语言:javascript
复制
if 'Bob' in my_list:
    print(my_list)

这样输出就是:

代码语言:javascript
复制
my_list = ['hey', 'how are', 'you']

它删除了['Bob', 'Jim']

EN

回答 2

Stack Overflow用户

发布于 2019-06-21 09:37:56

您可以尝试这样做:

代码语言:javascript
复制
my_list = ['hey', 'how are', 'you', 'Bob', 'Jim']

if 'Bob' in my_list:
    bob_index = my_list.index("Bob")  #Get index of Bob
    my_list[bob_index:len(my_list)] = [] #Remove everything from Bob onwards
    print(my_list)

输出:

代码语言:javascript
复制
['hey', 'how are', 'you']
票数 -1
EN

Stack Overflow用户

发布于 2019-06-21 10:12:41

目前还不清楚,在找到字符串后,您是只想不显示(打印),还是想将它们全部从列表中删除。

下面是如何执行每个操作的方法:

代码语言:javascript
复制
my_list = ['hey', 'how are', 'you', 'Bob', 'Jim']

# Output strings up to 'Bob'.
try:
    stop = my_list.index('Bob')
except ValueError:
    stop = len(my_list)
print(my_list[:stop])


# Remove strings from 'Bob' onward.
try:
    del my_list[my_list.index('Bob'):]
except ValueError:
    pass
print(my_list)
票数 -2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56695648

复制
相关文章

相似问题

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