私のコードで間違いを見つけようとしています。 私のIDE(MacのCoderunnerが)これだけは言う:Python例外:ValueError:アンパックする値が多すぎます(予想2)
File "A3.py", line 27, in <module>
ValueError: too many values to unpack (expected 2)
私はこの例外を持っていませんでした。私はそれを扱う方法と問題がどこにあるか分かりません。私が間違っていることは何ですか?
これは私のコードです...私はあなたが一緒にキーと値を反復処理するfor key, count in trigrams.items():
を行う必要がある線27
with open("spd.txt", encoding="utf-8") as f:
text = f.read()
text = text.replace("\xad", "")
words = []
for word in text.lower().split():
word = word.strip("‚‘!,.:«»-()'_#-–„“■;+*?")
if word != "":
if not word[-1].isalnum():
print(repr(word))
words.append(word)
trigrams = {}
for i in range(len(words)-2):
word = words[i]
nextword = words[i + 1]
nextnextword = words[i + 2]
key = (word, nextword, nextnextword)
trigrams[key] = trigrams.get(key, 0) + 1
l = list(trigrams.items())
l.sort(key=lambda x: (x[1], x[0]))
l.reverse()
for key, count in trigrams: #This is line 27
if count < 5:
break
word = key[0]
nextword = key[1]
nextnextword = key[2]
print(word, nextword, nextnextword, count)
:'。キーと値を一緒に反復処理します。辞書のちょうど上を反復すると、キーが得られます。 –