Python 有没有办法只检查列表中两个值相同的值

Python 有没有办法只检查列表中两个值相同的值,python,arrays,list,Python,Arrays,List,我正在制作一个刽子手游戏,我很快就要完成了,我只有一个问题: 如果输入的单词有两个相同的字母,它将不起作用。我知道问题是什么,系统正在检查过去的字母,因为它已经找到了值,我只是不知道如何解决它 有没有办法让代码填充列表中的两个空格 代码如下: #make player one or computer pick word mainword = input("Enter your word\n").lower() #varibels builtword = [] correct

我正在制作一个刽子手游戏,我很快就要完成了,我只有一个问题:

如果输入的单词有两个相同的字母,它将不起作用。我知道问题是什么,系统正在检查过去的字母,因为它已经找到了值,我只是不知道如何解决它

有没有办法让代码填充列表中的两个空格

代码如下:

#make player one or computer pick word
mainword = input("Enter your word\n").lower()

#varibels
builtword = []
correctLetters = list(mainword)

#establish length of build word
for x in range(len(mainword)):
    builtword.append('*')

#make player two guess letter

userGuess = input("Guess letter\n").lower()

#main code
while builtword != correctLetters:
    if userGuess in correctLetters:

        print('That was correct')
        builtword[correctLetters.index(userGuess)] = userGuess
        print(builtword)
        if builtword != correctLetters:
            userGuess = input("Guess letter").lower()

    else:
        print('sorry that\'s wrong try again')
        userGuess = input("Guess letter").lower()
因此,在这种情况下,假设我们使用HELLO并键入L,是否有任何方法可以将L(2和3)的值或us 3和4都填入
builtword

尝试以下方法:

#make player one or computer pick word
mainword = input("Enter your word\n").lower()

#varibels
builtword = list('*'*len(mainword))
correctLetters = list(mainword)

#make player two guess letter

userGuess = input("Guess letter\n").lower()

#main code
while builtword != correctLetters:
    if userGuess in correctLetters:
        print('That was correct')
        char_count = correctLetters.count(userGuess)
        if char_count == 1:
            builtword[correctLetters.index(userGuess)] = userGuess
            print(builtword)
        else:            
            index = -1
            for _ in range(char_count):
                index = correctLetters.index(userGuess, index+1)
                if builtword[index] != userGuess:
                    builtword[index] = userGuess
                    break
                         
        if builtword != correctLetters:
            userGuess = input("Guess letter").lower()

    else:
        print('sorry that\'s wrong try again')
        userGuess = input("Guess letter").lower()

检查代码缩进请在字符串中进行操作,更改
buildword
如果字符串中的字母匹配,请详细说明什么?遍历字符串?请重复您的字符串处理教程;这里应该有几个例子。是的,这解决了一些非常微小的缺陷,但我可以修复它,有一种方法可以同时填补这两个缺陷吗?@devahschaeffers这么简单,只需删除
break