下面是GPS周和周内秒转公历时间 以及 公历时间转GPS周和周内秒的小函数。
def cal2gps(cal):
# cal2gps 将公历GPS时间转换到GPS周和周内的秒
# 返回列表,周和周内秒
mjd=cal2mjd(cal)
#GPS从MJD44244开始
e=mjd-44244
week=math.floor(e/7)
e=e-week*7
return [week,round(e*86400)]
def gps2cal(gpst):
# gps2cal 将GPS周和周内的秒转换到公历GPS时间
# 返回列表 年月日时分秒
# GPS从MJD44244开始
mjd = 44244+(gpst[0]*86400*7+gpst[1])/86400
cal = mjd2cal(mjd)
return cal
里面调用的mjd2cal() 和 cal2mjd()函数是儒略日和公历相互转化的,函数在下面的链接里