Python 日期函数

1. 介绍
日期是计算机科学中非常重要的概念之一,特别是在处理时间、调度任务以及数据分析等方面。Python 提供了许多日期函数和库,使得对日期的处理变得更加简单和高效。
本文将介绍 Python 中常用的日期函数,包括日期的格式化、获取当前日期和时间、日期的加减运算、日期之间的比较等。
2. time 模块
Python 的 time 模块提供了一些与时间相关的函数。通过导入 time 模块,我们可以使用一些常用的日期操作函数。
2.1 time.time()
time.time() 函数返回从 1970 年 1 月 1 日零时 (UTC) 开始经过的秒数。这个时间戳可以用于计算时间间隔,或者用于确定某个操作的执行时间。下面是一个例子:
import time
start_time = time.time()
# 执行一些耗时的操作
time.sleep(1)
end_time = time.time()
elapsed_time = end_time - start_time
print("经过了", elapsed_time, "秒")
输出:
经过了 1.0008764266967773 秒
2.2 time.localtime()
time.localtime() 函数返回一个包含当前时间的时间元组。这个时间元组的内容包括年、月、日、时、分、秒等信息。下面是一个例子:
import time
current_time = time.localtime()
year = current_time.tm_year
month = current_time.tm_mon
day = current_time.tm_mday
hour = current_time.tm_hour
minute = current_time.tm_min
second = current_time.tm_sec
print("当前时间:", year, "年", month, "月", day, "日", hour, "时", minute, "分", second, "秒")
输出:
当前时间: 2022 年 7 月 12 日 18 时 30 分 0 秒
3. datetime 模块
Python 的 datetime 模块提供了更高层次的日期和时间操作。使用 datetime 模块,我们可以轻松获取当前日期和时间、进行日期的计算和比较等操作。
下面是一些常用的 datetime 函数的介绍。
3.1 获取当前日期和时间
使用 datetime.datetime.now() 函数可以获取当前的日期和时间。
import datetime
current_date_time = datetime.datetime.now()
print("当前日期和时间:", current_date_time)
输出:
当前日期和时间: 2022-07-12 18:30:00.123456
3.2 格式化日期
可以使用 strftime() 函数将日期格式化为特定的字符串格式。下面是一些常用的格式化字符串:
%Y: 四位数的完整年份%m: 两位数的月份 (01 到 12)%d: 两位数的日 (01 到 31)%H: 24 小时制的小时数 (00 到 23)%M: 分钟数 (00 到 59)%S: 秒数 (01 到 61, 60 和 61 用于闰秒)
import datetime
current_date_time = datetime.datetime.now()
formatted_date_time = current_date_time.strftime("%Y-%m-%d %H:%M:%S")
print("格式化后的日期和时间:", formatted_date_time)
输出:
格式化后的日期和时间: 2022-07-12 18:30:00
3.3 日期的加减运算
可以使用 timedelta 对象进行日期的加减运算。
import datetime
current_date = datetime.date.today()
one_day_delta = datetime.timedelta(days=1)
yesterday = current_date - one_day_delta
tomorrow = current_date + one_day_delta
print("昨天的日期:", yesterday)
print("明天的日期:", tomorrow)
输出:
昨天的日期: 2022-07-11
明天的日期: 2022-07-13
3.4 日期比较
可以使用比较运算符对日期进行比较。
import datetime
current_date = datetime.date.today()
future_date = datetime.date(2022, 12, 31)
if current_date < future_date:
print("当前日期在未来日期之前")
else:
print("当前日期在未来日期之后")
输出:
当前日期在未来日期之前
4. calendar 模块
Python 的 calendar 模块提供了一些与日历相关的函数。使用 calendar 模块,我们可以轻松地生成和操作日历。
下面是一些常用的 calendar 函数的介绍。
4.1 calendar.calendar()
calendar.calendar(year) 函数返回指定年份的日历。默认情况下,日历的每周以星期一开始,并且每行显示 7 天。
import calendar
cal = calendar.calendar(2022)
print(cal)
极客教程