有用的业务日期范围

DateRanger的Python项目详细描述


什么是DateRanger?

https://travis-ci.org/spitfire-sidra/DateRanger.svghttps://coveralls.io/repos/spitfire-sidra/DateRanger/badge.svg?branch=masterhttps://pypip.in/version/DateRanger/badge.svghttps://pypip.in/py_versions/DateRanger/badge.svghttps://pypip.in/download/DateRanger/badge.svg

DateRanger是一个帮助用户查找日期范围的模块。

安装

目前,DateRanger仍在开发中。

它可以通过github和pip安装。

通过github安装

pip install git+https://github.com/spitfire-sidra/DateRanger

通过PIP安装

pip install --pre DateRanger

用法

日期框架

DateFrame帮助您计算日期范围内的天数、周数、季度数或年数。

它还可以在日期范围内显示每天、每周、每月、季度。

示例代码:

计算日期范围内的天数、周数、月数、季数或年数。

>>>fromdatetimeimportdate>>>fromDateRanger.objectsimportDateFrame>>>>>>df=DateFrame(date(2014,11,1),date(2014,12,20))>>>df.days()# There are 49 days between date(2014, 11, 1) and date(2014, 12, 20)49>>>df.weeks()# There are 7 weeks between date(2014, 11, 1) and date(2014, 12, 20)7>>>df.months()1>>>df.quarters()0>>>df.years()0

在日期范围内每天、每周、每月、季度或年产生收益。

>>>fromdatetimeimportdate>>>fromDateRanger.objectsimportDateFrame>>>>>>df=DateFrame(date(2014,11,30),date(2014,12,2))>>>days=[dayfordayindf.each_day()]>>>days[datetime.date(2014,11,30),datetime.date(2014,12,1),datetime.date(2014,12,2)]>>>>>>weeks=[weekforweekindf.each_week()]# 2 weeks>>>weeks# 2 tuples in a list[(datetime.date(2014,11,23),datetime.date(2014,11,29)),(datetime.date(2014,11,30),datetime.date(2014,12,6))]

其他有用的方法
>>>df.days()>>>df.weeks()>>>df.months()>>>df.quarters()>>>df.years()>>>>>>df.each_day()>>>df.each_week()>>>df.each_month()>>>df.each_quarter()>>>df.each_years()>>>df.get_range()

约会者

要使用此模块,首先需要设置基日期。基准日期可以是过去、现在和将来的任何日期。默认基日期是当前日期,即今天(date.today())。根据给定的日期,此模块帮助我们查找此日期所属的周、季或年。

例如:

如果基日期是datetime.date(2015,1,19),则相对日期范围为:

base_week
=> datetime.date(2015, 1, 18) ~ datetime.date(2015, 1, 24)
The week that contains base_date.
base_month
=> datetime.date(2015, 1, 1) ~ datetime.date(2015, 1, 31)
The month that contains base_date.
base_quarter
=> datetime.date(2015, 1, 1) ~ datetime.date(2015, 3, 31)
The quarter that contains base_date.
base_year
=> datetime.date(2015, 1, 1) ~ datetime.date(2015, 12, 31)
The year that contains base_date.
prev_week
=> datetime.date(2015, 1, 11) ~ datetime.date(2015, 1, 17)
Date range of previous week.
prev_month
=> datetime.date(2014, 12, 1) ~ datetime.date(2012, 12, 31)
Date range of previous month.
next_week
=> datetime.date(2015, 1, 25) ~ datetime.date(2015, 1, 31)
Date range of next week.
next_month
=> datetime.date(2015, 2, 1) ~ datetime.date(2015, 2, 28)
Date range of next month.

示例代码:

>>>fromdatetimeimportdate>>>fromDateRangerimportDateRanger>>>>>>dr=DateRanger(base_date=date(2015,1,1))>>>date_frame=dr.prev_month(2)>>>date_frame<DateRanger.objects.DateFrameobject...>>>>date_frame.weeks()5>>>date_frame.get_range()(datetime.date(2014,11,1),datetime.date(2014,11,30))

其他有用的方法
>>>dr.set_base_date(date)>>>dr.get_base_day()>>>dr.base_week()>>>dr.base_month()>>>dr.base_quarter()>>>dr.base_year()>>>>>>dr.prev_week(...)>>>dr.next_week(...)>>>>>>dr.prev_month(...)>>>dr.next_month(...)>>>>>>dr.prev_quarter(...)>>>dr.next_quarter(...)>>>>>>dr.prev_year(...)>>>dr.next_year(...)>>>>>>dr.from_date(...)>>>dr.to_date(...)

贡献

测试:

python -m unittest discover

此命令执行目录DateRanger/test/下的所有测试用例。

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

推荐PyPI第三方库


热门话题
java在Spring Boot中从CrudePository访问表的几列   biginteger如何将Java long转换为*无符号*baseX字符串(以及返回)?   NetBeans“方法”颜色的java深色主题不起作用   位操作如何在位集JAVA中左右移动位?   java如何在Spring Boot中调用函数后释放所有缓存数据   java如何在IntelliJ中调试子进程?   使用Jersey API处理java文件上传和缓冲内部   java如何在安卓上显示通知?   java如何使用mybatis 3传递动态字段和值   java第三方API在多模块Maven项目中看不到类   如何使用java在SQLServer2005中存储日期   java确实需要接口指针来提供多个版本的JNI函数表吗   java我的希伯来语文本在iText中是左对齐的   java在清单的java选项中配置密钥库。yml在铸造PCF中的应用