python - 如何创建一个可变时间函数,我可以在其中选择 python 中的时间(即不是实际的当前时间)?
问题描述
我有一个 Python 项目课程结束,我在 Python 中创建了一个路由系统。我创建了一个菜单,其中一个菜单选项是更改时间并显示我的包裹状态。例如,开始时间是早上 8 点,因为卡车刚刚离开,所以没有包裹送达。我调用我的菜单选项向前移动一小时,现在时间是上午 9 点,我想重新打印当时所有包裹的状态。由于每个包裹实际上是根据我的算法在特定时间交付的,因此它必须实际上是可行的,而我无法做到这一点。
我知道我可以使用 datetime.now 来显示当前时间,但是我无法找到有关如何显示我希望在程序开始时显示的时间(上午 8 点)以及如何在我可以修改的地方进行修改的资源多次向前移动 1 小时。
from datetime import datetime
now = datetime.now()
print(now)
以上是我暂时用作占位符的,但它与我的包系统中的时间不对应,所以它不是很有帮助。我感谢任何资源或朝着正确方向轻推!
解决方案
你可以.combine
a date
and time
into a datetime
,所以如果你想要例如“今天早上 8 点”,你可以这样做:
>>> from datetime import date, datetime, time
>>> first_thing = datetime.combine(date.today(), time(8))
# ^ today ^ at 8am
>>> first_thing
datetime.datetime(2019, 6, 26, 8, 0)
例如,当您想将其向前移动一个小时时,您可以使用timedelta
:
>>> from datetime import timedelta
>>> first_thing + timedelta(hours=1)
datetime.datetime(2019, 6, 26, 9, 0)
推荐阅读
- html - 从图像 html 中删除选定的轮廓
- r - 有没有办法将矩阵的大多数列绘制为一种颜色,但指定几列以独特的颜色绘制?
- flutter - 如何每 15 天运行一次函数?
- c++builder-6 - 如何在 C++Builder 6 中制作适用于任何计算机的应用程序?
- android - 尝试在android中创建文件夹并保存mp3文件失败
- html - 如何为所需的消息输入和文本区域设置样式
- c - 您将如何更改代码以使子级和父级同时运行?
- linq - 如何在 Uipath 中的 DataTable 上使用 LINQ
- python - 我正在尝试从组合框中获取当前选定的项目(键)
- c++ - Qt SQL Server - 散列密码