📜  如何在python中添加两个不同的时间(1)

📅  最后修改于: 2023-12-03 15:38:36.741000             🧑  作者: Mango

如何在Python中添加两个不同的时间

在Python中,我们可以使用datetime模块来对时间进行处理和计算。datetime模块中有datetime类和timedelta类,分别用于表示日期时间和时间间隔。

datetime类

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类可以用来表示时间间隔,也可以用来进行时间计算。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类来进行时间的处理和计算,示例代码中演示了如何实现两个时间的相加。掌握这些知识,可以帮助我们更好地处理和计算时间。