Possible Duplicate:
Getting 'int' object is not iterableИтак, я пытаюсь добавить значение в словарь на основе другого кода:
if not cat_sums.has_key(k): cat_sums[k] = 0 cat_sums[k] += value
Словарь выглядит так:
cat_sums = defaultdict(
, {'composed': [0], 'elated': [0], 'unsure': [0], 'hostile': [0], 'tired': [0], 'depressed': [0], 'guilty': [0], 'confused': [0], 'clearheaded': [0], 'anxious': [0], 'confident': [0], 'agreeable': [0], 'energetic': [0]}) И я получаю:
cat_sums[k] += value TypeError: 'int' object is not iterable
Это имеет смысл, потому что cat _sum[k] = [0] для первой итерации, а [0] не целое число, это список. Тогда я попробовал это:
print cat_sums[k[0]]
Чтобы увидеть, что он выведет, то есть посмотреть, должен ли я заменить
cat_sums[k]
наcat_sums[k[0]]
, однако это дало мне это:[]
Пустой список.
Итак, как мне добавить значение внутри словарной суммы cat _, перебирая каждый ключ? Что я здесь делаю неправильно?
Обратите внимание, просто чтобы уточнить, значение будет равно некоторому целому значению, которое больше или равно 0 (, хотя это может измениться, и отрицательные целые числа могут быть разрешены позже, но пока не)