24點。
創(chuàng)新互聯(lián)公司是一家以重慶網(wǎng)站建設公司、網(wǎng)頁設計、品牌設計、軟件運維、成都網(wǎng)站營銷、小程序App開發(fā)等移動開發(fā)為一體互聯(lián)網(wǎng)公司。已累計為主動防護網(wǎng)等眾行業(yè)中小客戶提供優(yōu)質(zhì)的互聯(lián)網(wǎng)建站和軟件開發(fā)服務。
Python程序能用很多方式處理日期和時間,轉(zhuǎn)換日期格式是一個常見的功能。Python提供了一個time和calendar模塊可以用于格式化日期和時間。時間間隔是以秒為單位的浮點小數(shù)。每個時間戳都以自從1970年1月1日午夜(歷元)經(jīng)過了多長時間來表示。Python的time模塊下有很多函數(shù)可以轉(zhuǎn)換常見日期格式。
小時0到23,從返回浮點數(shù)的時間輟方式向時間元組轉(zhuǎn)換,只要將浮點數(shù)傳遞給如localtime之類的函數(shù)。
import pandas as pd
方法一:
先利用to_datetime轉(zhuǎn)換為時間格式,tm列的數(shù)據(jù)形式為'yyyy-MM-dd HH:mm:ss'
df['tm_1'] = pd.to_datetime(df['tm_1'])
df['tm_2'] = pd.to_datetime(df['tm_2'])
利用".dt.seconds"轉(zhuǎn)換為秒,除以相對于的間隔數(shù)得到分鐘、小時等
df['diff_time'] = (df['tm_1'] - df['tm_2']).dt.seconds/3600
利用round函數(shù)可進行四舍五入
df['diff_time'] = round(df['diff_time'])
方法二,日期相減變?yōu)樾r;變?yōu)樘斓脑拰替換為D即可:
df['diff_time'] = (df['tm_1'] - df['tm_2']).values/np.timedelta64(1, 'h')
大概邏輯說下吧:
1.把文件處理成CSV格式,也就是每行不同字段都用逗號分隔,然后my_list = line.split(',)
2.建立一個字典a,用于存儲人員打電話的開始時間和結(jié)束時間,這個要去除連續(xù)記錄,內(nèi)容格式為 {name:[start_time,end_time]},然后針對文件處理
3、my_list[0]不等于下一行的值,則把上一行的my_list[0]作為key,結(jié)束時間填在字典的end_time里,把下一行的mylist[0]作為key,開始時間填在字典的start-time,然后循環(huán)下來,實現(xiàn)去重
4、時間間隔=mylist[0]:mylist[0][1]-mylist[0][0]就是這個人開始通話距離上一個人通話結(jié)束的時間間隔
用定時器做,1秒鐘喚醒一次響應函數(shù),不要用延時函數(shù) sleep
# 定義時間顯示
self.timer = QtCore.QTimer(self)
self.timer.timeout.connect(self.act_displayTM) #綁定響應函數(shù)
self.timer.setInterval(1000) #設置時間間隔
self.timer.start()
# 定時響應事件對應邏輯
def act_displayTM(self):
s_time = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
self.ui.label_Date.setText(s_time)
return
可以。
1、首先獲取一下pythonwhile循環(huán)運行的時間。
2、然后設定一個時間長度,設定調(diào)整當時時間如大于這個時間。3、最后會自動退出pythonwhile循環(huán),退出后查看調(diào)整完的間隔時間即可。