我想在法语单词列表中加入由星号 (*) 分隔的两个单词。加入这些词后,我想检查这个词是否存在于法语词典中。如果是,则连接的单词应保留在列表中,否则应附加到另一个列表中。我在我的代码中使用了 yield(我是这个函数的新手),但是我的嵌套 if/else 循环有问题。任何人都可以帮助我实现我的目标吗?我失败的代码如下:
words = ['Bien', '*', 'venue', 'pour', 'les','engage', '*', 'ment','trop', 'de', 'YIELD', 'peut','être','contre', '*', 'productif' ]
with open ('Fr-dictionary.txt') as fr:
dic = word_tokenize(fr.read().lower())
l=[ ]
def join_asterisk(ary):
i, size = 0, len(ary)
while i < size-2:
if ary[i+1] == '*':
if ary[i] + ary[i+2] in dic:
yield ary[i] + ary[i+2]
i+=2
else: yield ary[i]
i+=1
l.append(ary[i] + ary[i+2])
if i < size:
yield ary[i]
print(list(join_asterisk(words)))
慕莱坞森
隔江千里
PIPIONE
MMTTMM
随时随地看视频慕课网APP
相关分类