欢迎访问宙启技术站
智能推送

Python 中的日期和时间处理函数

发布时间:2023-06-01 03:15:08

Python 的标准库中有许多用于处理日期和时间的函数和类,这些工具可以让我们轻松地获取当前时间、计算两个日期之间的时间差、将日期以某种格式输出等等。本文将介绍 Python 中常用的日期和时间处理函数及其用法。

1. time 模块

time 模块包含了一些与时间相关的函数,最常用的是 time() 函数和 sleep() 函数。

time() 函数返回当前的时间戳(1970 年 1 月 1 日零点以来经过的秒数),使用示例如下:

import time

# 获取当前时间戳
timestamp = time.time()
print(timestamp)

sleep() 函数可以让程序暂停一段时间,使用示例如下:

import time

print('开始执行')
time.sleep(2)  # 暂停 2 秒
print('结束执行')

2. datetime 模块

datetime 模块提供了一个 datetime 类,用于处理日期和时间。datetime 类有多个构造函数,最常用的是 datetime(year, month, day, hour=0, minute=0, second=0, microsecond=0) 函数,它创建一个日期时间对象,可以通过访问该对象的 year、month、day、hour、minute、second 和 microsecond 属性获取对应的值。

使用示例如下:

import datetime

# 获取当前日期和时间
now = datetime.datetime.now()
print(now)

# 获取当前日期
today = datetime.datetime.today()
print(today)

# 创建特定日期时间
dt = datetime.datetime(2021, 9, 30, 12, 30, 0)
print(dt)

3. timedelta 类

timedelta 类表示两个日期或时间之间的时间差。使用示例如下:

import datetime

now = datetime.datetime.now()
dt = datetime.datetime(2021, 9, 30, 12, 30, 0)

# 计算时间差
diff = now - dt
print(diff)
print(diff.days)  # 输出天数
print(diff.seconds)  # 输出总秒数(不包括天数)

4. strftime() 函数

datetime 类中的 strftime() 函数可以将日期时间格式化为字符串。它需要一个格式化字符串作为参数,格式化字符串中包含一些特定的占位符,代表日期时间的各个部分。

使用示例如下:

import datetime

now = datetime.datetime.now()

# 将日期格式化为字符串
str_now = now.strftime('%Y-%m-%d %H:%M:%S')
print(str_now)

常用的占位符包括:

- %Y:年份,4 位数字;

- %m:月份,两位数字,01-12;

- %d:日期,两位数字,01-31;

- %H:小时,两位数字,00-23;

- %M:分钟,两位数字,00-59;

- %S:秒数,两位数字,00-59。

5. strptime() 函数

strptime() 函数将字符串转换为日期时间。它需要两个参数, 个是要转换的字符串,第二个是表示格式的字符串。

使用示例如下:

import datetime

str_date = '2021-09-30 12:30:00'

# 将字符串转换为日期时间
dt = datetime.datetime.strptime(str_date, '%Y-%m-%d %H:%M:%S')
print(dt)

以上是 Python 中常用的日期和时间处理函数及其用法。在实际开发中,日期和时间处理是非常常见的需求,理解这些函数和类的用法对于提高代码的效率和可读性非常有帮助。