如何解决使用时间模块计算总秒数
我有一个文档,其中包含一些我希望平均的时间度量,因此我正在将分钟和秒转换为总秒数。该文件如下所示:
Boring text
time 15:07
现在我可以通过以下方法到达那里:
if line.startswith('time') :
rtminutes = re.findall('([0-9][0-9]):',line)
for min in rtminutes :
rtmintosec = float(min) * 60
rtseconds = re.findall(':([0-9][0-9])',line)
for sec in rtseconds :
totsecs = rtmintosec + float(sec)
print ("Total roast time in seconds:",totsecs)
似乎更好的方法是使用时间和total_seconds。
import time
if line.startswith('time') :
rt = re.search('\d{2}:\d{2}',line)
rtime = time.strftime(rt,'%M:%S')
rtime.total_seconds()
每次尝试时间方法时,都会遇到以下错误:
TypeError: strftime() argument 1 must be str,not re.Match
我显然在某处想念小船。建议表示赞赏。
解决方法
您需要确保找到匹配项,如果是,则从d1.append(sheet.cell_value(j,0))
对象中提取匹配的字符串。
re.Match
,
您好,我使用此代码进行了测试,只是删除了\ n及其对我有用
#line is your line number where the tims is time 15:07
#Boringtext is the file name
from colorama import Fore,Style
import linecache as s
import time
from datetime import timedelta
from datetime import datetime
def file_len(fname,line):
return s.getline(fname,line)
line = file_len('Boringtext',2)
if line.startswith('time') :
rt = line.split(' ')
rtime = datetime.strptime(rt[1].rstrip("\n"),'%M:%S')
t = timedelta(minutes = rtime.minute,seconds = rtime.second )
print(Fore.BLUE,t.total_seconds(),Style.RESET_ALL)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。