【问题标题】:How to add two datetime values in python using timedelta (datetime values are User input)如何使用 timedelta 在 python 中添加两个日期时间值(日期时间值是用户输入)
【发布时间】:2017-04-29 17:30:56
【问题描述】:

我正在尝试将天数(用户输入)减去日期时间。我一直在尝试了解如何将“天”转换为 timedelta 类型,但没有成功,请参见下面的代码:到目前为止我所拥有的。

from datetime import datetime, timedelta

expiry_input = input("Input Expiry Date: YYYY-MM-DD: ")
input_object = datetime.strptime(expiry_input, '%Y-%m-%d')

notice_non_renewal = input("Input Notice of Non-Renewal: ")
non_renewal_object = datetime.strptime(notice_non_renewal, '%d')

notice_day = input_object - non_renewal_object
print(notice_day)

结果如下:

Input Expiry Date: YYYY-MM-DD: 2017-05-30

Input Notice of Non-Renewal: 30

42854 days, 0:00:00

最终结果应该是2017-05-01

【问题讨论】:

  • print(non_renewal_object) - 这不是timedelta

标签: python python-3.x datetime timedelta


【解决方案1】:

构建一个timedelta 对象:

notice_non_renewal = int(input("Input Notice of Non-Renewal: "))
non_renewal_object = timedelta(days=notice_non_renewal)

【讨论】:

    猜你喜欢
    • 2017-12-15
    • 1970-01-01
    • 2022-07-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-06
    • 2018-02-17
    相关资源
    最近更新 更多