我創建一個劊子手的程序,我用的list()
函數把單詞放入一個列表,其中每個字母是它自己的元素刪除。當用戶輸入字母作爲猜測時,我想要從列表中刪除該字母。我試過list.remove(obj)
函數,它不起作用,因爲當我在shell中輸入列表的名字時,沒有字母被刪除。元素不是從列表
wordList=list(word) letter=input("please enter a letter") if len(letter)>1: print('invalid input, you may only enter one letter at a time') elif letter.isalpha(): if letter in letters: print('you have already entered this letter') else: letters.append(letter) if any(letter in s for s in wordList,): print(letter,"is in the word") wordList.remove(letter)
長度的編輯。 任何想法爲什麼這些字母不是從wordList
中刪除?
我無法重現。當我運行你的代碼時,你的代碼從'wordList'中刪除了字母。 – davedwards
注意:如果字母是'wordList'超過一次,那麼'wordList.remove(字母)'只會撤銷了一審。 (例如,如果單詞'= 「你好」''然後wordList'將'[ 'H', 'E', 'L', 'L', 'O']',並且如果信'=「L'',然後運行'wordlist.remove(字母)後','wordlist'將'[ 'H', 'E', 'L', 'O']',這意味着''L''仍然會在單詞表' '。)你可能會更好地使用這一套。 – 3D1T0R