**是比较老的问题了,现在有一个人问我,我想起来了,准备发个文章来水一水。
如果是python小白的话,有一定基础也可以看懂。
下面是代码块,我觉得没有什么必要讲,如果有问题可以留言。
代码只是随便写一写,排版不是那么好,勿喷!(主要是之前做的是车辆管理的程序)
from openpyxl import Workbook
from openpyxl import load_workbook
def xlsx_read(file):
wb = load_workbook(file)
data = []
headers = None
for row_no, row_data in enumerate(wb.worksheets[0].rows):
if row_no == 0:
headers = [c.value for c in row_data]
else:
data.append({
headers[i]: row_data[i].value for i in range(len(headers))})
wb.close()
return data
def parse_data(data):
company = {
}
for item in data:
key = item["所属部门"]
car_id = item['车牌号码']
if key in company.keys():
if car_id in company[key].keys():
company[key][car_id].append(item)
else:
company[key][car_id] = [item]
else:
company[key] = {
}
company[key][car_id] = [item]
return company
def statistic(car_id, car_data):
over_drive = list(filter(lambda x: x["报警类型"] == "超速报警", car_data))
tired_drive = list(filter(lambda x: x["报警类型"] == "疲劳驾驶", car_data))
tired_drive_time = sum([int(x['持续时长(秒)']) for x in tired_drive])
over_drive_time = sum([int(x['持续时长(秒)']) for x in over_drive])
re_data = {
'car_id': car_id