gpt4 book ai didi

Python ; IF 单词在行且单词 2 不在行

转载 作者:行者123 更新时间:2023-11-30 22:52:21 25 4
gpt4 key购买 nike

很抱歉成为这里的菜鸟,因为我是这方面的新手

我一直在尝试编写一个代码,它可以在行中找到某个单词,然后从第二个单词列表中进行匹配,以查看同一行中是否存在第二个单词。仅当第一个单词不存在于一行中时才打印行;这是片段和示例

keywords =("a","b","c","d")
keywords2 = ("e","f","g")
a = ("a is a ", "a is not e","b is b", "b is not f")
for key2 in keywords2:
for key in keywords:

for line in a:

if key2 not in line:
if key in line:

print(key+" Found in --> ")
print (line)

所需的输出是

a is a
b is b

虽然我们有

a Found in --> 
a is a
b Found in -->
b is b
b Found in -->
b is not f
a Found in -->
a is a
a Found in -->
a is not e
b Found in -->
b is b
a Found in -->
a is a
a Found in -->
a is not e
b Found in -->
b is b
b Found in -->
b is not f

我尝试了几种方法来实现循环但没有用

最佳答案

如果我理解正确的话,您只需要具有 keywords 值的“行” ,但不是keywords2 。在这种情况下,只需执行以下操作:

for line in a:
if [x for x in keywords if x in line] and not [x for x in keywords2 if x in line]:
print line

[x for x in keywords if x in line]循环遍历 keywords 中的所有项目如果它们在 line 中,则将它们添加到列表中.

[x for x in keywords2 if x in line]循环遍历 keywords2 中的所有项目如果它们在 line 中,则将它们添加到列表中.

空列表被视为 False,您需要 keywords列表不为空且 keywords2列表为空。

关于Python ; IF 单词在行且单词 2 不在行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38603955/

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