【发布时间】:2020-01-28 04:20:21
【问题描述】:
假设我有一个这样的列表:
runtimes = ['24 min per ep',
'1 hr 55 min',
'24 min per ep',
'25 min per ep',
'23 min per ep',
'23 min per ep',
'23 min per ep',
'27 min per ep',
'24 min per ep',
'23 min per ep',
'24 min',
'22 min per ep',
'25 min per ep',
'24 min per ep',
'23 min per ep',
'24 min per ep',
'24 min per ep',
'24 min per ep',
'24 min per ep',
'1 hr 41 min',
'1 hr 27 min',
'25 min per ep',
'1 hr 22 min',
'30 min per ep',
'25 min per ep',
'1 hr 31 min',
'2 hr 4 min',
'24 min per ep',
'24 min per ep']
我想将这些值转换为纯分钟:
我首先认为最好使用如下所示的两个正则表达式将“1 hr”替换为“60 min”,然后删除所有非数字,但这似乎并不理想。
re.sub("1 hr", "60 min", runtimes))
re.sub("\D", "", runtimes)
如果有人知道更好的方法来做到这一点,将不胜感激。
如果您还有其他问题,请告诉我。
感谢您的帮助。
【问题讨论】:
-
如果您在浏览器中搜索“Python 时间处理”,您会发现可以比我们在此处管理的更好地解释这一点的参考资料。您将需要
datetime模块,也许还需要一个简单的输入解析器。