如何在2D列表中查找重复项--Python3

2022-04-03 00:00:00 python multidimensional-array counter

问题描述

list = [['P', True, 1], ['U', True, 3], ['P', True, 4], ['P', True, 5], ['Y', True, 6]]

我正在尝试制作Hangman游戏,我正在尝试找到在这个2D列表中出现不止一次的字母,并获取它们的索引。第一个值是字母,第二个值是他们是否已经找到该字母,第三个值是x坐标。我试了这么多方法,但都没有奏效。


解决方案

我不确定您是否正在尝试查找重复字母的索引。这是我尝试过的。看看这能不能行得通。如果您正在寻找整个第二个列表的副本,则代码将会更改。我正试着在第二张单子上找到这封信的复制品。对于示例:p重复3次。

list = [['P', True, 1],
        ['U', True, 3],
        ['P', True, 4],
        ['P', True, 5],
        ['Y', True, 6]]

x = [list[i][0][0] for i in range (len(list))]

for i in range (len(x)):
    if (x[i] in x[:i]) or (x[i] in x[i+1:]): print (x[i], i)

输出:

P 0
P 2
P 3

相关文章