python - 转换字典中的列表
问题描述
我需要在字典中转换列表 detail_flights。在列表的一部分之后(它更长,但结构始终相同):
detail_flights = ['22:20 – 23:55\nBGY Bergamo Orio al Serio\n‐\nBCN Barcellona-El Prat\ndiretto\n1h 35m\n6:20 – 8:00\nBCN Barcellona-El Prat\n‐\nBGY Bergamo Orio al Serio\ndiretto\n1h 40m', '22:20 – 23:55\nBGY Bergamo Orio al Serio\n‐\nBCN Barcellona-El Prat\ndiretto\n1h 35m\n12:05 – 13:45\nBCN Barcellona-El Prat\n‐\nBGY Bergamo Orio al Serio\ndiretto\n1h 40m']
我想将列表的所有信息放在以下标题中:
detail_headers = ['departure_time', 'departure_airport', 'to_delete', 'arrival_airport', 'type_flight', 'duration']
我想获得这样的东西:
detail_flights = [{'departure_time': '22:20 – 23:55', 'departure_airport': 'BGY Bergamo Orio al Serio', 'to_delete': '-', 'arrival_airport': 'BCN Barcellona-El Pra', 'type_flight': 'diretto', 'duration': '1h 35', 'departure_time': '6:20 – 8:00', 'departure_airport': 'BCN Barcellona-El Prat', 'arrival_airport': 'BGY Bergamo Orio al Serio', 'type_flight': 'diretto', 'duration': '1h 40m'}, {....}]
这是我的代码:
def listToString(s):
str1 = " "
return (str1.join(detail_flights))
detail_flights = listToString(detail_flights)
detail_flights = detail_flights.split(sep='\n')
from itertools import zip_longest
detail_headers = ['departure_time', 'departure_airport', 'to_delete', 'arrival_airport', 'type_flight', 'duration']
d1=zip_longest(detail_headers,detail_flights)
print (dict(d1))
这是我的输出,它不能正常工作:
{'departure_time': '22:20 – 23:55', 'departure_airport': 'BGY Bergamo Orio al Serio', 'to_delete': '‐', 'arrival_airport': 'BCN Barcellona-El Prat', 'type_flight': 'diretto', 'duration': '1h 35m', None: '1h 45m'}
解决方案
detail_flights = ['22:20 – 23:55\nBGY Bergamo Orio al Serio\n‐\nBCN Barcellona-El Prat\ndiretto\n1h 35m\n6:20 – 8:00\nBCN Barcellona-El Prat\n‐\nBGY Bergamo Orio al Serio\ndiretto\n1h 40m', '22:20 – 23:55\nBGY Bergamo Orio al Serio\n‐\nBCN Barcellona-El Prat\ndiretto\n1h 35m\n12:05 – 13:45\nBCN Barcellona-El Prat\n‐\nBGY Bergamo Orio al Serio\ndiretto\n1h 40m']
detail_headers = ['departure_time', 'departure_airport', 'to_delete', 'arrival_airport', 'type_flight', 'duration']
dictionary = dict(zip(detail_flights , detail_headers ))
print(dictionary)
输出:
{'22:20 – 23:55\nBGY Bergamo Orio al Serio\n‐\nBCN Barcellona-El Prat\ndiretto\n1h 35m\n6:20 – 8:00\nBCN Barcellona-El Prat\n‐\nBGY Bergamo Orio al Serio\ndiretto\n1h 40m': 'departure_time', '22:20 – 23:55\nBGY Bergamo Orio al Serio\n‐\nBCN Barcellona-El Prat\ndiretto\n1h 35m\n12:05 – 13:45\nBCN Barcellona-El Prat\n‐\nBGY Bergamo Orio al Serio\ndiretto\n1h 40m': 'departure_airport'}
推荐阅读
- python - 使用 utf-8 编码的 Pandas to_excel 似乎不起作用
- python - 迭代一个 numpy 日期数组
- javascript - 为什么即使我使用 Promise,我的 ui 线程也会被阻止?
- javascript - 动态音频
- regex - htaccess 文件夹到域重写不起作用
- android - 飞镖状态小部件将数据传递给状态错误:小部件为空
- macos - 如何从终端运行 Emacs 作为 Mac 上的非锁定窗口?
- java - JavaFX,将锚窗格元素与另一个文件中的 FXML 交换
- javascript - 多张图片上传,每张都有预览
- r - 将 GLM 变量名称和值与术语分开