擅长:python、mysql、java
<p>您不想从正在迭代的列表中删除元素。相反,您可以添加一个条件来验证匹配的单词是否已添加到输出列表中</p>
<p>应该是这样的:</p>
<pre><code>lst = []
for i in match:
has_match = False
for j in data:
if i.split()[0] in j:
has_match = True
print(i, j)
if j not in lst:
lst.append(j)
if len(i) > 1:
k = ' '.join(i.split()[:2])
if k in j:
has_match = True
print(i, j)
if j not in lst:
lst.append(j)
if not has_match:
lst.append(i + ' - not found')
</code></pre>
<p>我还删除了<code>break</code>关键字,因为它们可能会阻止代码在<code>data</code>中的多个字符串中查找匹配项。使用布尔值应该可以完成这项工作。如果您还有其他问题,请告诉我们</p>