我正在使用python和pyfits运行一些代码,我正在从标题中读出一行信息。我得到了正确的行,但由于它是如何写在标题中的,它是用冒号分隔我需要的数字打印出来的。
我正在运行的线路是 print header [0] .header ['opp']
这个打印 34:04:32.04
我需要进行计算,我将这些数字加在一起,但不知道怎么做,因为它们被冒号分开。
答案 0 :(得分: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