以下代码在变量webproperties_list
中存储unicode字典:
webproperties_list = service.management().webproperties().list(
accountId='~all').execute()
profile_id = webproperties_list.get(u'defaultProfileId')
print profile_id
出于某种原因,.get()
键上的u'defaultProfileId'
正在给我None
,即使我知道它在回复中。我还尝试了没有u
的get,我仍然得到None
响应:
profile_id = webproperties_list.get('defaultProfileId')
在从键中获取值之前,我是否需要对dict做一些事情,或者我是否完全做错了其他事情?
更新:
以下是我得到的回复:
{u'username': u'removed', u'kind': u'analytics#webproperties', u'items': [{u'profileCount': 1, u'kind': u'analytics#webproperty', u'name': u'removed', u'level': u'STANDARD', u'defaultProfileId': u'removed'.....
我需要检索u'defaultProfileId'
不确定如何从dict中列表中的dict中获取值...
答案 0 :(得分:1)
要弄清楚如何访问它,有时候有助于一步一步:
>>> d
{u'username': u'removed', u'items': [{u'profileCount': 1, u'defaultProfileId': u'removed', u'kind': u'analytics#webproperty', u'name': u'removed', u'level': u'STANDARD'}], u'kind': u'analytics#webproperties'}
>>> d['items']
[{u'profileCount': 1, u'defaultProfileId': u'removed', u'kind': u'analytics#webproperty', u'name': u'removed', u'level': u'STANDARD'}]
>>> d['items'][0]
{u'profileCount': 1, u'defaultProfileId': u'removed', u'kind': u'analytics#webproperty', u'name': u'removed', u'level': u'STANDARD'}
>>> d['items'][0]['defaultProfileId']
u'removed'