2016-07-15 5 views
-1

나는 사전에있는 값에 1을 더하는 방법을 보았다. python의 사전 키 값에 1 값을 추가하려고하면 오류가 계속 발생합니다.사전에 값을 1로 더하기

여기 내 코드입니다 : 내가 키에 하나를 추가 할

arr = {('1', '20'): [0], ('15', '14'): [0]} 

('1', '20').

TypeError: 'int' object is not iterable 

나는 단순히 내가 잘못하고있는 중이 야 모르는 : 나는 에러 코드를 얻을

w = 1 
x = 20 
arr[(w, x)] += 1 

:

여기 내 코드입니다. 어떤 제안이라도 대단히 감사하겠습니다.

답변

3

두 가지 문제 : 당신의 사전

  1. 의 키는 문자열의 튜플,하지만 당신은 INT의 튜플을 사용하여 사전에 인덱스를 시도하고 있습니다.
  2. 사전의 값은 (1 길이) int 목록이지만 해당 목록 중 하나에 숫자를 추가하려고합니다. 당신이 뭔가 할 수 있습니다

:

# dictionary mapping tuples of ints to ints 
arr = { (1, 20): 0, (15, 14): 0 } 

# now we can just use ints  
w = 1 
x = 20 
# and no need to use [0] to get the first element of the list 
# (because it's no longer a list) 
arr[(w, x)] += 1 
: 코드의 자세한 내용을 보지 않고

w = '1' 
x = '20' 
arr[(w, x)][0] += 1 

을, 당신이 더 같은 것을 원하는 수

관련 문제