在python中将float转换为time(hour.minute)

时间:2014-12-04 08:46:09

标签: python time

a = 08.94

这里08是小时,.94是分钟,我想计算08.94到09.34

请给我一个想法,

提前致谢...

2 个答案:

答案 0 :(得分:4)

两种情况:

a = "08.94"
asplit = a.split('.')

如果分数被视为分钟:

print str(int(asplit[1])/60+int(asplit[0])) + '.' + str(int(asplit[1]) % 60)

如果分数被视为分钟的百分比:

print asplit[0] + '.' + str(int(float(asplit[1]) *  60))

输出:

9.34
08.5640

答案 1 :(得分:0)

有两种可能性:

  1. 你误解了数据。

    也许你所拥有的不是hh.mm,而是一分钟。

    所以你必须做hours = int(a); minutes = (a-hours) * 60

  2. 将那个放入花车的人误解了一些东西。

    然后你可以做

    所以你必须做hours = int(a); minutes = (a-hours) * 100,它必须将前两位小数放入minutes,也可以添加一些小数。

    如果您之后检测到>= 60,则向hours添加一个并从minutes减去60。

  3. (在这个答案的前一个版本中,我使用了函数floor()。它可以从math模块导入并返回相同的值,但是作为一个浮点数。但是最好使用{ {1}}为了不需要导入并确实获得小时的整数值,这在大多数情况下可能更干净。)