Python-排除两个日期之间的周末

Kar*_*nna 5 python datetime python-2.7

我想计算两个日期之间的差额,但想从中排除周末。以下是日期格式:

CreateDate  - 2017-08-29 10:47:00
ResolveDate - 2017-09-23 16:56:00
Run Code Online (Sandbox Code Playgroud)

sha*_*678 5

您可以使用numpy.busday_count:

from datetime import datetime
import numpy as np

create_date = "2017-08-29 10:47:00" 
resolve_date = "2017-09-23 16:56:00"

create_datetime = datetime.strptime(create_date, '%Y-%m-%d %H:%M:%S')
resolve_datetime = datetime.strptime(resolve_date, '%Y-%m-%d %H:%M:%S')

print("The difference in days is: %d" % ((resolve_datetime - create_datetime).days))
print("The difference in business days is: %d") % (np.busday_count(create_datetime, resolve_datetime))
Run Code Online (Sandbox Code Playgroud)

输出:

The difference in days is: 25
The difference in business days is: 19
Run Code Online (Sandbox Code Playgroud)

  • 嗨,谢谢您的解决方案,但是我们如何获得确切的分数值呢?(还包括几个小时?) (2认同)

J_H*_*J_H 2

运行一个while循环,不断timedelta向 中添加 +1 天create_date。在单独的计数器中跟踪工作日与周末。