0

json 応答からテキストを取得して twitter API をクエリするときに、少し奇妙な問題に遭遇しました。

この方法でテキストを引っ張ると:

def retrieveText(raw_tweets):
    for l in raw_tweets:
       format_data = json.loads(l)

        for k in format_data.keys():
           if k == 'text':
               text = format_data['text']

問題はありません。ただし、キーのリストを常に反復処理するのは少し面倒です。

このバージョンに変更した場合:

def retrieveText(raw_tweets):
    for l in raw_tweets:
        format_data = json.loads(l)
        text = format_data['text']

前のコード スニペットの結果に基づくと、意味をなさない KeyError を受け取ります。

私が見落としていることについて誰かが洞察を持っている場合は、お知らせください。

4

1 に答える 1

2

これ

for k in format_data.keys():
    if k == 'text':
        text = format_data['text']

次のように書き換えることができます。

if 'text' in format_data:
    text = format_data['text']
于 2013-05-21T16:37:01.830 に答える