📜  datetime day deutsch python(1)

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

使用 Python 处理日期时间和星期

在 Python 中,我们可以使用 datetime 模块来处理日期、时间和星期。这个模块提供了很多与日期时间有关的常量和函数,让我们可以很方便地进行日期时间的计算和转换。

日期和时间的表示

datetime 模块中,日期和时间可以用不同的类来表示:

  • date 类:表示一个日期,包括年、月、日
  • time 类:表示一个时间,包括小时、分钟、秒、微秒
  • datetime 类:表示一个日期和时间,包括年、月、日、小时、分钟、秒、微秒

我们可以使用这些类来表示不同的日期、时间和日期时间,并进行各种计算和转换。

获取当前日期和时间

我们可以使用 datetime.datetime.now() 方法获取当前日期时间。例如:

import datetime

now = datetime.datetime.now()
print(now)  # 输出:2022-05-29 12:34:56.789012
获取指定日期和时间

我们也可以使用 datetime.datetime(year, month, day, hour=0, minute=0, second=0, microsecond=0) 构造函数来创建一个指定的日期时间。例如:

import datetime

dt = datetime.datetime(2022, 5, 29, 12, 34, 56, 789012)
print(dt)  # 输出:2022-05-29 12:34:56.789012
日期时间的格式化输出

我们可以使用 datetime.datetime.strftime(format) 方法将日期时间格式化为指定的字符串。其中 format 是格式化字符串,包含各种格式化符号。例如:

import datetime

dt = datetime.datetime(2022, 5, 29, 12, 34, 56, 789012)
print(dt.strftime('%Y/%m/%d %H:%M:%S.%f'))  # 输出:2022/05/29 12:34:56.789012
日期时间的计算和比较

我们可以使用 datetime.timedelta() 类来表示日期时间的差值,例如两个日期之间的天数、小时数、分钟数等等。例如:

import datetime

dt1 = datetime.datetime(2022, 5, 29, 12, 0, 0, 0)
dt2 = datetime.datetime(2022, 6, 1, 15, 0, 0, 0)
delta = dt2 - dt1
print(delta.days)  # 输出:3
print(delta.seconds // 3600)  # 输出:75

我们也可以直接对日期时间进行加减操作,例如加上某个时间段或减去某个时间段。例如:

import datetime

dt1 = datetime.datetime(2022, 5, 29, 12, 0, 0, 0)
delta = datetime.timedelta(days=3, hours=5, minutes=10, seconds=20)
dt2 = dt1 + delta
print(dt2)  # 输出:2022-06-01 17:10:20

我们也可以使用比较运算符比较两个日期时间的大小。例如:

import datetime

dt1 = datetime.datetime(2022, 5, 29, 12, 0, 0, 0)
dt2 = datetime.datetime(2022, 6, 1, 15, 0, 0, 0)
print(dt2 > dt1)  # 输出:True
星期的表示和计算

在 Python 中,我们可以使用 weekday() 方法和 isoweekday() 方法来获取一个日期是星期几。其中 weekday() 返回值为 0(代表星期一)到 6(代表星期日),而 isoweekday() 返回值为 1(代表星期一)到 7(代表星期日)。例如:

import datetime

dt = datetime.datetime(2022, 5, 29, 12, 0, 0, 0)
print(dt.weekday())  # 输出:6
print(dt.isoweekday())  # 输出:7

我们也可以使用 datetime.timedelta() 类来计算一个日期与其所处星期开始日期的差距(天数)。例如:

import datetime

dt = datetime.datetime(2022, 5, 29, 12, 0, 0, 0)
delta = datetime.timedelta(days=dt.weekday())
week_start = dt - delta
print(week_start)  # 输出:2022-05-23 12:00:00