我已經收藏了一個名爲「可能」的鍵盤'a' - 'z'的字典。每個鍵都有一個列表中的'a'到'z'的值。基本上,26個字母。遍歷字典中的列表中的字符串PYTHON
我將字符串清理成小寫字母並去掉標點符號,並將每個單詞保存到名爲「已清理的字詞」的列表中。
我想查看列表,如果列表中的單詞只有兩個字母,請從兩個字母單詞中的兩個字母的鍵中移除值'c'。然後移動下一個2個字母的單詞並重復。
這是錯誤的片段:
for y in cleanedWords:
if len(y) == 2:
for i in y:
possible[i].remove('c')
以下是錯誤:
Traceback (most recent call last):
File "F:\python\crypto\cipher.py", line 83, in <module>
possible[i].remove('c')
ValueError: list.remove(x): x not in list
顯然,我做錯了什麼。有人能指引我朝着正確的方向嗎?我能不能打電話給我,我是怎麼做的?
泰勒
'在'.remove()'之前的循環中打印repr(可能的[i])''。確保'可能[我]'有''c''在裏面。 – Tim
您正在多次調用'possible [i] .remove('c')',可能帶有'i'的重複值(取決於'clearedWords'包含的內容)。正如Tim所說的,你應該在刪除它之前檢查'possible [i]'是否包含'c'。 – del
謝謝你們,我現在看到它。 repr明確表示。 –