📅  最后修改于: 2023-12-03 15:38:36.741000             🧑  作者: Mango
在Python中,我们可以使用datetime模块来对时间进行处理和计算。datetime模块中有datetime类和timedelta类,分别用于表示日期时间和时间间隔。
datetime类可以通过以下方式来创建一个时间:
from datetime import datetime
now = datetime.now()
print(now)
输出如下:
2021-12-31 15:30:00.123456
我们可以通过datetime类的属性来获取时间的年、月、日、时、分、秒等信息:
print(now.year)
print(now.month)
print(now.day)
print(now.hour)
print(now.minute)
print(now.second)
print(now.microsecond)
输出如下:
2021
12
31
15
30
0
123456
我们也可以通过datetime类提供的一些方法来进行时间的格式化:
print(now.strftime("%Y-%m-%d %H:%M:%S"))
print(now.strftime("%Y%m%d%H%M%S"))
输出如下:
2021-12-31 15:30:00
20211231153000
timedelta类可以用来表示时间间隔,也可以用来进行时间计算。timedelta类有以下属性和方法:
| 属性/方法 | 说明 | | ----------- | ---------------------------------------------- | | days | 表示间隔的天数 | | seconds | 表示间隔的秒数 | | microseconds | 表示间隔的微秒数 | | total_seconds | 返回总秒数,包括了days、seconds、microseconds | | add | 加法 | | sub | 减法 |
以下是使用timedelta类进行时间计算的示例代码:
from datetime import datetime, timedelta
now = datetime.now()
yesterday = now - timedelta(days=1)
print(now)
print(yesterday)
输出如下:
2021-12-31 15:30:00.123456
2021-12-30 15:30:00.123456
我们可以利用timedelta类来实现两个时间的相加。以下是示例代码:
from datetime import datetime, timedelta
t1 = datetime.strptime("2021-12-31 15:30:00", "%Y-%m-%d %H:%M:%S")
t2 = timedelta(hours=1, minutes=30)
t3 = t1 + t2
print(t3)
输出如下:
2021-12-31 17:00:00
在示例代码中,我们首先使用datetime.strptime()方法将字符串转换成datetime类的对象,然后利用timedelta类创建一个时间间隔t2。最后,我们使用“+”操作符来实现t1和t2的相加,得到了t3这个新的时间。
本文介绍了如何在Python中使用datetime和timedelta类来进行时间的处理和计算,示例代码中演示了如何实现两个时间的相加。掌握这些知识,可以帮助我们更好地处理和计算时间。