0

我正在使用 python 和 pyfits 运行一些代码,并且正在从标题中读出一行信息。我得到了正确的行,但是由于它是如何写在标题中的,所以它打印出来时用冒号分隔我需要的数字。

我正在运行的行是 print header[0].header['opp']

这打印 34:04:32.04

我需要做一个计算,将这些数字加在一起,但不知道如何做,因为它们用冒号分隔。

4

1 回答 1

1

这样的事情应该可以解决您的问题:

header[0].header['opp'] = "34:04:32.04"
print (sum(float(x) for x in header[0].header['opp'].split(":")))

...输出:

70.03999999999999

(编辑)

或者,如果这些值实际上构成了以小时、分钟和秒为单位的时间:

s = "34:04:32.04"
ss = [float(x) for x in s.split(":")]
print (ss[0] + ss[1]/60 + ss[2]/3600)

...以小时为单位输出值:

34.07556666666667
于 2013-03-22T23:00:56.480 回答