'长'对象不可迭代

时间:2017-03-24 06:05:41

标签: python-2.7 dictionary

我正在尝试迭代dict中的下面的dict。 user_genre_score是dict里面的dict。它是使用

创建的

编辑:

genre_list=[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23]
lang_list=[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]

user_genre_score = collections.defaultdict(lambda: collections.defaultdict(int))

修改

for track in tracks_played:
        user_genre_score[track['user_id']][track['genre']]=int(user_genre_score[track['user_id']][track['genre']]) + 1
        user_lang_score[track['user_id']][track['lang']]=int(user_lang_score[track['user_id']][track['lang']]) + 1
更新后的

user_genre_score值为:

defaultdict(<function <lambda> at 0x7fb1eb36e140>, {38913L: defaultdict(<type 'int'>, {10L: 1}), 38949L: defaultdict(<type 'int'>, {8L: 1, 10L: 1, 22L: 1}), 38985L: defaultdict(<type 'int'>, {8L: 1}), 19309L: defaultdict(<type 'int'>, {9L: 1, 10L: 2, 11L: 3}), 38959L: defaultdict(<type 'int'>, {11L: 1}), 19763L: defaultdict(<type 'int'>, {13L: 1}), 38708L: defaultdict(<type 'int'>, {2L: 1, 11L: 1}), 38902L: defaultdict(<type 'int'>, {3L: 1, 22L: 10}), 38905L: defaultdict(<type 'int'>, {4L: 2}), 23695L: defaultdict(<type 'int'>, {6L: 17}), 13502L: defaultdict(<type 'int'>, {5L: 1, 22L: 4})})

现在我正在尝试迭代user_genre_score。

    for k,v in user_genre_score.iteritems():
        print k

但是低于错误:

'long' object is not iterable

任何帮助将不胜感激。

0 个答案:

没有答案