2014-02-20 37 views
0

所以我必须做出一个计划起搏运行涉及[MM:SS] Python的输入

我的老师要投入到这个样子

1 Enter pace [mm:ss]: 8:15 
2 Enter distance [miles]: 26.2 

于是我去了,这样做是为了输入

1 pace=input("Enter pace [mm:ss]: ") 
2 dist=input("Enter distance [miles]: ") 

但我不知道怎么去围绕“:”因为没有办法(我知道的还),使其忽略“:”只有使用整数。

+0

'毫米,SS =地图(INT,pace.split( ':'))' – mshsayem

回答

1
import time 
pace=input("Enter pace [mm:ss]: ") 
dist=input("Enter distance [miles]: ")  
unixTime = time.mktime(time.strptime(pace, '%M:%S')) 

更容易秒钟,工作比是WIL字符串格式的时间,并strptime结与mktime将您的字符串转换成秒。

无论出于什么原因,我甚至会更困惑你,但上述想法应该起作用,不能自己弄清楚,而不是删除整个答案,我会给出一个有效的解决方案,这有点丑陋的黑客攻击:

import time 
pace=input("Enter pace [mm:ss]: ") 
dist=input("Enter distance [miles]: ")  
unixTime = time.time() - time.mktime(time.strptime(time.strftime('%Y-%m-%d %H:')+pace, '%Y-%m-%d %H:%M:%S')) 

这会给你多少秒的用户步伐秒。

  1. time.time()会给你在几秒钟内
  2. time.mktime()当前时间会struct_time对象转换成秒以来的划时代
  3. time.strptime()皈依“2014年2月20日”成秒从纪元表示
  4. time.strftime()仅用于生成输入字符串中的缺失数据,以正确计算针对time()的秒数“运行”

更多关于Unix Time

0

为了得到以秒为间隔步伐:

pace=input("Enter pace [mm:ss]: ") 
pace_in_seconds = (int(pace.split(':')[0]) * 60) + int(pace.split(':')[1])