无法从unicode字典中的键获取字典值

时间:2014-06-25 02:26:33

标签: python dictionary unicode

以下代码在变量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中获取值...

1 个答案:

答案 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'