如何找到两个单词的相似性,并以更有效的方式从列表中删除任何进一步的相似性



我正在尝试创建Just One棋盘游戏,我很难找到一种有效的方法来删除类似的线索,而不需要意大利面条代码。游戏的工作方式是,任何提交的相似线索都会从线索列表中删除,这就是我试图在这里复制的。据我所知,它似乎至少使用了两条相同的线索(例如骨骼、骨骼和叉骨(。有没有一种更有效、不那么像意大利面条的方式来写这篇文章?

for y in range(0,len(clues)):
if y == len(clues)-1:
break
for z in range(y+1,len(clues)):
if clues[y] in clues[z] or clues[z] in clues[y]:
first_word = str(clues[y])
second_word = str(clues[z])
try:
while True:
clues.remove(first_word)
except:
pass
try:
while True:
clues.remove(second_word)
except:
pass

我通常会将列表中的数据转换为一个集合。集合通常只占用其中的1个数据,一个集合不能存储相同的数据,所以我认为通过将列表变成具有set()函数的集合,它会擦除所有类似的数据。

代码:

clues = [1, 3, 5, 1, 2, 3]
print(clues)
clues = set(clues)
print(clues)

输出:

[1, 3, 5, 1, 2, 3]
{1, 2, 3, 5}

相关内容

  • 没有找到相关文章

最新更新