如何在python 2.7中减去两个日期并获得日期

时间:2018-12-05 09:30:25

标签: python python-2.7

我有两个这样的日期。我两个日期都需要几天。

start_date = 2018-12-01
end_date = 2018-12-03

st_dates = date(start_date)
en_dates = date(end_date)
ss = st_dates - en_dates
print(ss.days)

我遇到错误

  

未定义全局名称“日期”

2 个答案:

答案 0 :(得分:3)

假设您有(请注意,它们是字符串):

start_date = '2018-12-01'
end_date = '2018-12-03'

然后,您需要导入datetime模块和parse the strings作为日期时间对象:

import datetime
st_dates = datetime.datetime.strptime(start_date, '%Y-%m-%d')
en_dates = datetime.datetime.strptime(end_date, '%Y-%m-%d')

然后像您一样做不同的事情:

ss = st_dates - en_dates
print(ss.days)

答案 1 :(得分:0)

您需要导入datetime模块。对于日期,您可以使用datetime.datetime

from datetime import datetime
start_date = datetime(2018, 12, 1)
end_date = datetime(2018, 12, 3)
ss = start_date - end_date 
print(ss.days)

from datetime import datetime
st_dates = datetime.strptime('2018-12-01', '%Y-%m-%d')
en_dates = datetime.strptime('2018-12-03', '%Y-%m-%d')
ss = st_dates - en_dates
print(ss.days)