回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我有一个从JSON转换的字典列表,但是很少有键是Unicode的,这给我访问字典的键带来了麻烦。列表如下所示:</p>
<pre><code>d = [{'location': u'',
'partner_id': '648746',
'partner_is_CSP': 'Y',
'partner_name': 'D4T4 SOLUTIONS PLC',
'partner_programs_tiers': [{'program_name': 'Cloud Service Provider',
'tier_name': 'Gold'}],
'partner_type': 'Direct Reseller; Service Provider',
'sort_value': '60',
'url_to_logo': u'',
'url_to_website': 'https://www.d4t4solutions.com/'},
{'location': {'address_type': 'H',
'city': 'Tirane',
'country': 'ALBANIA',
'geo_latitude': '41.348335',
'geo_longitude': '19.79865',
'phone': u'',
'point_of_contact': u'',
'state': u'',
'street_1': 'RR. E DURRESIT PALL. M.C.INERTE KATI 1 LAPRAKE',
'street_2': u'',
'street_3': u'',
'zip': '1023'},
'partner_id': '649341',
'partner_is_CSP': 'N',
'partner_name': 'COMMUNICATION PROGRESS',
'partner_programs_tiers': '[]',
'partner_type': 'Distribution VAR',
'sort_value': '0',
'url_to_logo': u'',
'url_to_website': 'www.commprog.com'}]
</code></pre>
<p>现在,我想这样做:</p>
<pre><code>l = [i["location"].get("street_1",None) for i in d]
</code></pre>
<p>但我得到了以下错误:</p>
<pre class="lang-none prettyprint-override"><code>AttributeError: 'Unicode' object has no attribute 'get'
</code></pre>
<p>我怎样才能解决这个问题?非常感谢你的帮助。你知道吗</p>
<p>p.S.list<code>d</code>包含的字典比这里显示的多,而且它包含的Unicode不止一个。当我在字典上输入时,我希望遇到具有空Unicode值的location键的<code>None</code>值。你知道吗</p>