【发布时间】:2018-03-31 00:43:08
【问题描述】:
我有一个 csv 文件。我想按当天的行程来拆分数据。我尝试创建一个字典列表列表。我希望也许有更好的方法?我的最终目标是使用 get a distance summary from google distance api 来计算当天行驶的距离。
例如,对于以下跟随输入:
输入 csv 文件:
Address,City,State,ShowingDateTime
1234 Hodge Street,Brown,CA,1/4/17 12:00
9613 Llama Street,Downtown,CA,1/5/17 12:15
7836 Bob Street,Swamp,CA,1/5/17 12:15
2134 Cardinal Street,Ruler,CA,1/6/17 11:30
预期的数据结构?:
List[
List[Dict[1234 Hodge Street,Brown,CA,1/4/17 12:00],
List[
Dict[9613 Llama Street,Downtown,CA,1/5/17 12:15],
Dict[7836 Bob Street,Swamp,CA,1/5/17 12:15]
],
List[
Dict[2134 Cardinal Street,Ruler,CA,1/6/17 11:30]
]
]
尝试(不工作):
#!/usr/bin/env python3
from datetime import datetime
from googlemaps import Client
import requests
import csv
def read_csv(csv_file):
trip_list = []
with open(csv_file) as File:
reader = csv.DictReader(File, dialect='excel')
subtrip_list=[]
previous_date=0
for row in reader:
current_date = datetime.strptime(row['ShowingDateTime'], '%m/%d/%y %H:%M').date()
if previous_date==0:
previous_date=current_date
if current_date != previous_date:
trip_list.append(subtrip_list)
del subtrip_list[:]
subtrip_list.append(row)
previous_date=current_date
【问题讨论】:
-
如果您要为对距离矩阵 API 的请求指定
departure_time,则它需要在未来,而不是过去,根据 documentation。因此,您的请求必须省略日期/时间信息。
标签: python list google-maps dictionary data-structures