群友提問:請問用python語言,怎麼求這個故障時長?想了好久,總不對。
嚴小樣兒:安排!
安排一、導包讀數1import pandas as pd
2import datetime
3data = pd.read_excel("工作簿1.xlsx",usecols=[i for i in range(6)])
1# 先求出現在時間,便於做時間差值
2now = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
3# 轉換為時間格式
4data['發生時間'] = pd.to_datetime(data['發生時間'])
5# 計算時間差值
6delta = pd.to_datetime(now) - data['發生時間']
7# 轉換單位為分鐘(小時,秒均可)
8data['故障發生時長(分)'] = delta.dt.days*1440 + delta.dt.seconds/60
(中間結果)
此時,雖然達到了群友的要求,但是感覺結果並不太直觀。大家可以根據真實的業務場景需要進行一下格式化輸出,下面的代碼提供大家一種思路。三、保存數據1# 為了結果更加直觀,做個小小的處理
2data['故障發生時長(分)'] = data['故障發生時長(分)'].map(lambda x: str(round(x//1440)) + '天'+str(round(x % 1440)) + '分')
3data.to_excel(r"C:/Users/Administrator/Desktop/result.xlsx",index = False ,sheet_name='result')
(請添加下面作者嚴小樣兒微信,參加送書活動,每周都送~)