저는 .txt 파일을 읽고 문장에서 단어의 수를 값으로하는 사전을 작성해야하는 짧은 과제를 수행하고 있습니다. 특정 길이의 문장. 나는 파일을 읽고 각 문장의 길이를 이미 결정했지만 사전을 만드는 데 문제가 있습니다.정수 키를 사용하여 사전 업데이트
는 이미 사전을 초기화 한하고 업데이트하는 것을 시도하고있다 (for 루프 내에서 그 문장을 반복) 다음 코드를 사용하여 :
for snt in sentences:
words = snt.split(' ')
sDict[len(words)]+=1
그것은 매우 첫 번째 반복에 나에게 KeyError를 제공을 . 구문과 관련이 있다고 확신하지만 사전의 기존 항목을 업데이트하는 방법을 모르겠습니다. 이 과제의 맥락에서 순수한 사전의 사용을 제한하는 경우
from collections import defaultdict
sDict = defaultdict(int)
for snt in sentences:
sDict[len(snt.split())] += 1
가, 다음에 그 값을 증가하기 전에 키의 존재 여부를 테스트해야합니다
당신은 정말 사전을 업데이트 할 수 없습니다를하면 값이 업데이트되고 아직 생성되지 않은 키. 'collections'에서'defauldict'를 사용하거나'ifen'을 사용하여'len (words)'가 사전의 키인지 확인하십시오. – Abdou
완료하려면, 잊어 버린 ['''dict.get()'''] (https://docs.python.org/3/library/stdtypes.html#dict.get) 메소드가 있습니다. – wwii