그래서이 이상한 버그를 발견했습니다.키가 사전에있을 때 KeyError
bottom = tuple(puzzle[len(puzzle)-1])
next_moves = database_5x5[bottom]
내 코드가 실행되고 나에게이 오류 제공합니다 : 나는 '
KeyError: (0, 1, 1, 0, 1)
을이 사전에 액세스하는 코드입니다
database_5x5 = {'(1, 0, 0, 0, 1)': [(0, 0), (0, 1)],
'(0, 1, 0, 1, 0)': [(0, 0), (0, 3)],
'(1, 1, 1, 0, 0)': [(0, 1)],
'(0, 0, 1, 1, 1)': [(0, 3)],
'(1, 0, 1, 1, 0)': [(0, 4)],
'(0, 1, 1, 0, 1)': [(0, 0)],
'(1, 1, 0, 1, 1)': [(0, 2)]
}
: 나는이 키를 포함하는 사전을 만든 여기서 무엇이 잘못 될 수 있는지 확실하지 않습니다 ... 도움에 감사드립니다!
키는 문자열이지만 터플을 사용하려는 것 같습니다. – smarx
'database_5x5 [str (bottom)]'시도 – Umair
딕셔너리를 튜플을 키로 사용하도록 변경하거나 룩업을 수행 할 때 튜플을 문자열로 변환하십시오 (예 :'database_5x5 [str (bottom)]). – smarx