全球导航卫星系统日历(GPS&BDS)的转换器日期。

gnsscal的Python项目详细描述


本模块包含在公历日期、年份和GNSS日历之间进行转换的功能,现在支持GPS和BDS的GNSS日历。

在公历日期和年份日期(DOY)之间有3个转换函数:

date2doy(date)date2yrdoy(date)yrdoy2date(year,doy)

像这样使用它们:

>>>fromdatetimeimportdate>>>date2doy(date(2017,5,17))137>>>date2yrdoy(date(2017,5,17))(2017,137)>>>yrdoy2date(2017,137)datetime.date(2017,5,17)

在公历日期和GNSS日历(GPS或BDS)之间有4个转换函数:

date2gpswd(date)date2bdswd(date)gpswd2date(gpsweek,dayofweek)bdswd2date(bdsweek,dayofweek)

像这样使用它们:

>>>fromdatetimeimportdate>>>date2gpswd(date(2017,5,17))(1949,3)>>>date2bdswd(date(2017,5,17))(593,3)>>>gpswd2date(1949,3)datetime.date(2017,5,17)>>>bdswd2date(593,3)datetime.date(2017,5,17)

年、日(DOY)和GNSS日历(GPS或BDS)之间有4个转换功能:

yrdoy2gpswd(year,doy)yrdoy2bdswd(year,doy)gpswd2yrdoy(gpsweek,dayofweek)bdswd2yrdoy(bdsweek,dayofweek)

像这样使用它们:

>>>yrdoy2gpswd(2017,137)(1949,3)>>>yrdoy2bdswd(2017,137)(593,3)>>>gpswd2yrdoy(1949,3)(2017,137)>>>bdswd2yrdoy(593,3)(2017,137)

GPS日历和BDS日历之间还有两个转换功能:

gpsw2bdsw(gpsweek)bdsw2gpsw(bdsweek)

像这样使用它们:

>>>gpsw2bdsw(1949)593>>>bdsw2gpsw(593)1949

其中日期的类型是datetime.date,其他类型是intint的元组。

在公历日期,gps和bds的零点也作为模块级常量给出。

示例

importgnsscalfromdatetimeimportdate# Convert Gregorian date to GPS calendartoday=date.today()gpsweek,days=gnsscal.date2gpswd(today)# Convert GPS week to BDS weekgpsweek=1812bdsweek=gnsscal.gpsw2bdsw(gpsweek)# Get zero point of GPS and BDS calendargps_zero=gnsscal.GPS_START_DATEbds_zero=gnsscal.BDS_START_DATE

cli模式

您还可以在cli模式下使用gnsscal:

$ python -m gnsscal [options]

使用可选参数设置输入日期:

-h, --help                          show this help message and exit
-v, --version                       show program's version number and exit
-date <year> <month> <day>          year, month, day
-ydoy <year> <doy>                  year, day of year
-gpswd <GPS week> <day of week>     GPS week, day of week
-bdswd <BDS week> <day of week>     BDS week, day of week

例如,在终端中键入此命令:

$ python -m gnsscal -date 2017 5 17

然后它将打印:

Gregorian date: 2017-05-17
year, doy: 2017, 137
GPS week: 1949, 3
BDS week: 0593, 3

安装

可以使用pip安装模块:

$ pip install gnsscal

测试

使用命令测试gnsscal.py:

$ python test_gnsscal.py

许可证

根据BSD发布,请参阅许可证以了解更多详细信息。

如有意见和建议,请发送电子邮件至:jiangyingming(at)live.com

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java为什么加载个人密钥库需要这么多时间?   当我使用main创建Android应用程序UI时,如何通过java修改它。xml文件?   java Tomcat 6和7:WebappClassLoader:尝试为名称org/apache/openjpa/persistence/osgi/BundleUtils复制类定义   java`parseInt()`和`parseDouble()`throw`NumberFormatExeption`   JavaSpringMongoDB填充引用   在LinuxMint中打开Eclipse时发生java错误;OpenJDK 64位服务器VM警告:忽略选项MaxPermSize=512m;支持在8.0中被删除   使用PKCS7Padding的AES CBC加密在Java和Objective中有不同的结果   java为什么Jackson要用一个以类命名的额外层来包装我的对象?   json在Java中使用parallelStream提取值   JavaSpring存储库自动生成方法:按给定的顶部编号+按字段描述排序选择   java是否有可序列化的标准闭包接口?   .NET与Java在初创公司的web应用程序开发   如何修复java。java中的lang.unsatifiedLinkError   JavaFX+Spring Boot+Hibernate应用程序对多个环境的java支持   自定义视图组中的java更改未呈现