2024-09-29 03:36:28 发布
网友
我有一张单子
l1 = [('is', 'VBZ'), ('plant', 'NN')]
我想检查列表中的VB是否存在
VB
我使用了下面的代码,但它没有给出结果。在
如果“VB”不总是出现在第一个索引上
match = [y for y in l1 if any(['VB' in x for x in y])]
第一步:逐个访问元组。在
步骤2:检查所访问的元组的任何字符串项中是否存在字符串“VB”。在
我认为你需要:
l1 = [('is', 'VBZ'), ('plant', 'NN')] print([x for x in l1 if 'VB' in x[1]])
输出
代码为什么不工作
您正在检查VB是否在('is', 'VBZ')中,而它不是。据我所知,它们是POS tags,并且总是在第一个索引处。您需要检查列表中每个元组的索引1中是否存在VB
('is', 'VBZ')
POS tags
在您的解决方案中,您需要检查子字符串,为此您需要搜索元组中的元素。在
如果你想搜索精确的字符串,那么你的解决方案是正确的
'VBZ' in ('is', 'VBZ') ==> True 'VB' in ('is', 'VBZ') ==> False
如果你知道两个元素 将在元组中
如果不确定元组中的元素
[tu for tu in l1 if any(['VB' in elem for elem in tu])] ==> [('is', 'VBZ')]
如果“VB”不总是出现在第一个索引上
第一步:逐个访问元组。在
步骤2:检查所访问的元组的任何字符串项中是否存在字符串“VB”。在
我认为你需要:
输出
^{pr2}$代码为什么不工作
您正在检查
VB
是否在('is', 'VBZ')
中,而它不是。据我所知,它们是POS tags
,并且总是在第一个索引处。您需要检查列表中每个元组的索引1中是否存在VB
在您的解决方案中,您需要检查子字符串,为此您需要搜索元组中的元素。在
如果你想搜索精确的字符串,那么你的解决方案是正确的
如果你知道两个元素 将在元组中
^{pr2}$如果不确定元组中的元素
相关问题 更多 >
编程相关推荐