2015-12-02 83 views
0

我在這裏一個非常奇怪的問題,我想不通。下面的代碼第一次執行時,它可以像預期的那樣工作,城市和國家可以正確打印。此後每次都沒有打印。遍歷字典和值不總是打印

for tweet in tweets: 
    city = tweet['city'] 
    country = tweet['country'] 
    print("{}, {}".format(city, country)) 

如果我只是打印整個字典,我可以看到城市和國家都在那裏,他們有值。我在後臺有一些工作線程來更新城市和國家,但我無法弄清楚爲什麼會影響它,如果是的話。

+5

'tweets'可能是一個只能使用一次的生成器。 –

+0

我們可以看到更多的上下文代碼嗎? – David

+0

Ahhh,感謝@PaulH,回去修復我的__next__,最後重置並解決問題。 – Nathan

回答

0

的問題,任何人都出現這種情況也有類似的問題,是在我的資料Tweet類我__next__功能我不進行重置迭代器。因此,在迭代對象一次之後,該位置就在列表的末尾,並且從未在開始時被放回。