舉個數據例子
楚楚,預發-阿里雲杭州正式部署成功,1575521902000,1575521902000,成功 楚楚,代碼合並成功 ,1575520953000,1575520953000,成功 楚楚,代碼合並沖突 ,1575520846000,1575520846000,失敗 楚楚,代碼合並沖突 ,1575520764000,1575520764000,失敗 楚楚,代碼合並沖突 ,1575519776000,1575519776000,失敗 楚楚,代碼將變更 ,1575519698000,1575519698000,成功
這樣的數據,需取出沖突時間,兩種辦法
一種是,當匹配到合並成功行后,逐行進行時間相減
也就是,沖突1-成功,沖突2-沖突1,沖突3-沖突2,幾段時間相加也就是總沖突時間,這種適合數據較亂的情況
如果是例子數據,那么使用for循環很好搞
設讀取的數據存在list templist中
latestmerge = 'true'for m in tempList: if m[7] == 'codemergesuccess' and latestmerge == 'true': onemergeSuctime = m[3] latestmerge = 'false' elif m[7] == 'codemergefail': onemergeFailtime = m[3]
這樣子的話,當匹配到“代碼合並沖突”,就會循環給onemergeFailtime進行賦值,直到最后一個沖突時間;
latestmerge = 'true' 作為后面數據處理的一個判斷,只對第一次匹配進行賦值,如果期間夾雜了多余的合並成功,也不進行賦值;
---想的很簡單,供大家參考