gpt4 book ai didi

python - 连接不同列表中的两个字符串

转载 作者:行者123 更新时间:2023-12-01 01:07:51 24 4
gpt4 key购买 nike

我需要连接不同列表中的两个字符串并检查输出字符串是否在字典中。我尝试过的代码是:

x=['casa','lo','pre','computer']
y=['music','sun','ve','sident','house']
dic=['sunday','love','president','house','computer']
text=[]
errors=[]
iter_y=iter(y)
iter_x=iter(x)

for i in iter_x:
if i in dic:
text.append(i)
else:
try:
concatenated= i + next(iter_y)
if concatenated in dic:
text.append(concatenated)
except StopIteration:
continue
else:
errors.append(i)
print (text)

此代码仅返回 x 和 y 共有的单词(“计算机”)。我想要的输出是 x=[love, President, computer] 即,在输出中将“love”和“president”这两个词连接起来。

最佳答案

IIUC那么你可以使用itertools.product来获取两个不同列表的乘积,然后执行集合交集来找到共同的单词

from itertools import product
x=['casa','lo','pre','computer']
y=['music','sun','ve','sident','house']
dic=['sunday','love','president','house','computer']
set(list(map(''.join, list(product(x, y)))) + x + y) & set(dic)

输出:

{'computer', 'house', 'love', 'president'}

如果预期输出不应包含第二个列表中的 house,则不要在最终的串联列表中附加列表 y

set(list(map(''.join, list(product(x, y)))) + x) & set(dic)

输出

{'computer', 'love', 'president'}

关于python - 连接不同列表中的两个字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55163092/

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