1

という辞書オブジェクトがobj_1あり、その値は次のように表示されます。

{u'd':{u'results': [{u'Desc':u'This is a description...',
                    u'Title':u'This is a title...',
                     u'data': {u'Url': u'www.site.com'}},

                   {u'Desc':u'This is a description...', 
                    u'Title':u'This is a title...',
                     u'data': {u'Url': u'www.site.com'}}]
}}

これは、デコードされた json (requestsモジュール デコーダーを使用してデコードされたもの) です。u'Title'値と URL 値のみを抽出するにはどうすればよいですか? どのチュートリアルでも、このような辞書型は見たことがありません。

4

2 に答える 2

3

「obj_1」が実際に次のようになっていると仮定します。

obj_1 = {u'd':{u'results': [{u'Desc':u'This is a description...',
                            u'Title':u'This is a title...'},

                            {u'Desc':u'This is a description...', 
                            u'Title':u'This is a title...'}]
        }}

次に、次のように簡単です。

titles = [d['Title'] for d in obj_1['d']['results']]
于 2012-07-06T10:41:50.063 に答える
1
>>> obj_1 = {u'd':{u'results': [{u'Desc':u'This is a description...',
...                     u'Title':u'This is a title...',
...                      u'data': {u'Url': u'www.site.com'}},
... 
...                    {u'Desc':u'This is a description...', 
...                     u'Title':u'This is a title...',
...                      u'data': {u'Url': u'www.site.com'}}]
... }}
>>> [(x[u'Title'], x[u'data'][u'Url']) for x in obj_1[u'd'][u'results']]
[(u'This is a title...', u'www.site.com'), (u'This is a title...', u'www.site.com')]
于 2012-07-06T11:03:13.633 に答える