如何使用箭头增加日期?

How to increment a date using Arrow?

我正在使用 arrow 模块来处理 Python 中的 datetime 个对象。如果我得到这样的当前时间:

now = arrow.now()

...如何将它增加一天?

更新于 2020-07-28

增加一天

now.shift(days=1)

减一天

now.shift(days=-1)

原答案

自 2019 年 8 月 9 日起已弃用

https://arrow.readthedocs.io/en/stable/releases.html

  • 0.14.5 (2019-08-09) [更改] 删除了已弃用的替换班次功能。希望将复数属性传递给替换函数以移动值的用户应该改用 shift。
  • 0.9.0 (2016-11-27) [修复] 单独的替换和移位功能

增加一天

now.replace(days=1)

减一天

now.replace(days=-1)

I highly recommend the docs.

documentation

now = arrow.now()
oneDayFromNow = now.replace(days+=1)

docs 声明 shift 用于添加偏移量:

now.shift(days=1)

带有dayshoursminutes等参数的replace方法似乎与shift一样工作,尽管replace也有dayhourminute 用提供的值替换 给定字段中的值的参数。

无论如何,我认为例如now.shift(hours=-1)now.replace更清晰。