Python 如何使用列表理解从字典创建列表
我有一个目标:Python 如何使用列表理解从字典创建列表,python,arrays,list,object,list-comprehension,Python,Arrays,List,Object,List Comprehension,我有一个目标: myObj=[{'city':'newyork','number':5550},{'city':'sanfrancisco','number':0565}] 如何使用“列表理解”在下面的列表中仅存储\u city\u属性: my_new_list=[这里是列表理解] 输出应该是:“纽约”、“旧金山”试试这个: my_new_list = [item['city'] for item in myObj] 项目值第一次为{'city':'newyork','number':55
myObj=[{'city':'newyork','number':5550},{'city':'sanfrancisco','number':0565}]
如何使用“列表理解”在下面的列表中仅存储\u city\u
属性:
my_new_list=[这里是列表理解]
输出应该是:“纽约”、“旧金山”试试这个:
my_new_list = [item['city'] for item in myObj]
项目值第一次为{'city':'newyork','number':5550}
,第二次为{'city':'sanfrancisco','number':0565}
。由于这些是字典,我们可以使用项['city']从每个字典中访问城市值。给您:
my_new_list=[myObj中的行的行['city']
价值观
[‘纽约’、‘旧金山’]
[d['city']表示myObj中的d]
?只需注意“旧金山”城市的最后一个“数字”将抛出一个语法错误:十进制整数文本中的前导零是不允许的;对八进制整数使用0o前缀
向上表决。您如何改进它以满足可能缺少的city
属性?也许可以尝试my_new_list=[item['city']for item in myObj if item.get('city')]
。或者,如果希望将None
s保存到列表中,则可以对myObj中的项目使用my\u new\u list=[item.get('city')
。此外,dict.get()的第二个参数是在找不到请求的键时返回的值,因此如果希望它将另一个值保存到列表中,如“不可用”
,也可以添加该参数。