python如何将一列csv类似12 Hour(s), 0 Minute(s)转化为秒数

问题遇到的现象和发生背景

img


如何将这种转化为秒wow
流下无知的泪水

问题相关代码,请勿粘贴截图

尝试用过替换。。也不好弄

运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果

使用pandas读取表格并用正则匹配计算即可,处理代码如下:

import pandas as pd
import re
df=pd.read_csv('tcsv2.csv',header=None,sep='\n')
df=df[df[0]!='Disabled'].reset_index(drop=True)
df[0] = df[0].apply(lambda x: int(re.findall('\d+', x)[0])*3600+int(re.findall('\d+', x)[1])*60)
print(df)

运行结果:

F:\2021\qa\ot2>t9
       0
0  43200
1  43200
2     60
3   7200

如果解答对你有帮助,请点击采纳该答案按钮~~

通过字符串截取时间,得出小时和分钟,然后计算秒数即可,示例如下:

s = '12 Hour(s), 0 Minute(s)'
h,m = 0,0
if 'Hour' in s:
    h = int(s.split('Hour')[0].strip())
if 'Minute' in s:
    m = int(s.split('Minute')[0].split(',')[-1].strip())
t = h * 3600 + m* 60
print('秒数:', t)


img