工作时间的时间增量。支持精确的时间量(小时、秒)、自定义计划、假日和时区。
businesstimedelta的Python项目详细描述
#business timedelta
python的timedelta表示业务时间。此模块帮助您计算两个日期之间的确切工作时间。它支持常见的场景,如自定义计划、假日和时区。
[![构建状态](https://travis-ci.org/seppemans/businesstimedelta.svg?(https://travis ci.org/seppemans/businesstimetimedelta/businesstimetimedelta)
使用pip来安装busintimetimedelta。
`` shell
`` pip install busintimetimedelta
` ` `
` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` `/>定义一个工作日
workday=businesstimedelta.workdayrule(
开始时间=datetime.time(9),
结束时间=datetime.time(18),
工作日=[0,1,2,3,4])
工作日=[0,1,2,3,4])
0)
bdiff=businesshrs.差异(开始,结束)
print bdiff
bdiff.seconds)
40小时零秒
```
business time算术
``python
print start+businesstimedelta.businesstimedelta(businesshrs,hours=40)
2016-01-22 18:00:00+00:00
print end-businesstimedelta.businesstimedelta(businesshrs,小时=40)
2016-01-18 09:00:00+00:00
````
定义假日,只需使用[假日](https://pypi.python.org/pypi/holidays)包
`` python
将假日导入为pyholidays
ca-holidays=pyholidays.us(state='ca')
holidays=businesstimedelta.holidayrule(ca-holidays)
businesshrs=businesstimedelta.rules([工作日,午休,假日]
圣诞节在2015年12月25日星期五
start=datetime.datetime(2015年12月21日9月0日)
end=datetime.datetime(2015年12月28日9月0日)
print businesshrs.difference(start,end)
它们将本地化为UTC(参见上面的示例)。
2,3,4],
tz=pytz.timezone('america/santiago'))
tz=pytz.timezone('america/圣地亚哥')
santiago businessagehrs=busintimedelta.businesstimedelta.rules([santiago工作日,圣地亚哥午餐时间]
sf tz=pytz.timezone('america/洛杉矶')
sf start=sf z.localize(datetime.datetime(2016,1,18,18,9,0,0,2016,1,18,1,18,18,9,0,0))
sf up end=sfu-end=sf-tz.localize.localize(datetime.datetime.datetime.datetime(2016,1,1,0个,0))
打印圣地亚哥商业小时数差异(SF_开始,SF_结束)
python的timedelta表示业务时间。此模块帮助您计算两个日期之间的确切工作时间。它支持常见的场景,如自定义计划、假日和时区。
[![构建状态](https://travis-ci.org/seppemans/businesstimedelta.svg?(https://travis ci.org/seppemans/businesstimetimedelta/businesstimetimedelta)
使用pip来安装busintimetimedelta。
`` shell
`` pip install busintimetimedelta
` ` `
` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` `/>定义一个工作日
workday=businesstimedelta.workdayrule(
开始时间=datetime.time(9),
结束时间=datetime.time(18),
工作日=[0,1,2,3,4])
工作日=[0,1,2,3,4])
0)
bdiff=businesshrs.差异(开始,结束)
print bdiff
bdiff.seconds)
40小时零秒
```
business time算术
``python
print start+businesstimedelta.businesstimedelta(businesshrs,hours=40)
2016-01-22 18:00:00+00:00
print end-businesstimedelta.businesstimedelta(businesshrs,小时=40)
2016-01-18 09:00:00+00:00
````
定义假日,只需使用[假日](https://pypi.python.org/pypi/holidays)包
`` python
将假日导入为pyholidays
holidays=businesstimedelta.holidayrule(ca-holidays)
businesshrs=businesstimedelta.rules([工作日,午休,假日]
圣诞节在2015年12月25日星期五
start=datetime.datetime(2015年12月21日9月0日)
end=datetime.datetime(2015年12月28日9月0日)
print businesshrs.difference(start,end)
它们将本地化为UTC(参见上面的示例)。
2,3,4],
tz=pytz.timezone('america/santiago'))
tz=pytz.timezone('america/圣地亚哥')
santiago businessagehrs=busintimedelta.businesstimedelta.rules([santiago工作日,圣地亚哥午餐时间]
sf tz=pytz.timezone('america/洛杉矶')
sf start=sf z.localize(datetime.datetime(2016,1,18,18,9,0,0,2016,1,18,1,18,18,9,0,0))
sf up end=sfu-end=sf-tz.localize.localize(datetime.datetime.datetime.datetime(2016,1,1,0个,0))
打印圣地亚哥商业小时数差异(SF_开始,SF_结束)