gpt4 book ai didi

python,从列表中删除字符串中的单词

转载 作者:行者123 更新时间:2023-12-01 04:57:10 26 4
gpt4 key购买 nike

我想删除字符串中的单词,即列表中的单词或“种子”单词,

示例:

query = "LK936033.1 Babesia assembly 454hybrid_PBjelly scaffold Contig1323  7"
seeds = ["assembly","454","scaffold","contig"]

预期结果:

"LK936033.1 Babesia 7"

我找到了一种删除单词的方法,如下所示:

' '.join([i for i in query.split() if i not in seeds])

但此方法仅从种子列表中删除确切单词,而不是包含种子的单词。

最佳答案

您需要扩展您的测试;使用 any() function为了提高效率:

' '.join([i for i in query.split() if not any(w in i.lower() for w in seeds)])

any(w in i.lower() for w in seeds) test 使用生成器表达式来测试当前单词是否包含任何种子词(小写);它只会评估找到匹配项的最少测试次数。

演示:

>>> query = "LK936033.1 Babesia assembly 454hybrid_PBjelly scaffold Contig1323  7"
>>> seeds = ["assembly","454","scaffold","contig"]
>>> ' '.join([i for i in query.split() if not any(w in i.lower() for w in seeds)])
'LK936033.1 Babesia 7'

关于python,从列表中删除字符串中的单词,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27124181/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com