Skip to main content
 首页 » 编程设计

执行 .split() 后返回字典的 python 列表理解

2025年05月04日12zengkefu

我正在做一个基本的 Python 练习,我想拆分以下列表中的每个字符串并将每个城市映射到各州。 (假设','之后的状态是正确的)

我如何使用列表理解来简化这项工作?

cities = ['washington,ct', 'springfield,or', 'riverside,tx', 'franklin,vt', 'lebanon,co', 'dayton,tx', 'las vegas,nm', 'madison,ca', 'georgetown,ct', 'los angeles,tx'] 

期望的结果是:

{'washington': 'ct', 
 'springfield': 'or', 
 'riverside': 'tx', 
 'franklin': 'vt', 
 'lebanon': 'co', 
 'dayton': 'tx', 
 'las vegas': 'nm', 
 'madison': 'ca', 
 'georgetown': 'ct', 
 'los angeles': 'tx'} 

这是我在学习列表理解之前所做的

splitedList = [] 
for x in cities: 
    splitedList.append(x.split(',')) 
print(splitedList) 
 
my_dict = dict(splitedList) 
print(my_dict) 

请您参考如下方法:

将 dict 与 iterable 一起使用:

dict(s.split(',') for s in cities) 

输出:

{'washington': 'ct', 
 'springfield': 'or', 
 'riverside': 'tx', 
 'franklin': 'vt', 
 'lebanon': 'co', 
 'dayton': 'tx', 
 'las vegas': 'nm', 
 'madison': 'ca', 
 'georgetown': 'ct', 
 'los angeles': 'tx'}