Python日期函数大全
本文将介绍Python中与日期相关的主要函数和模块,帮助你更好的处理和操作日期数据。
datetime模块
datetime
模块是 Python 中处理日期和时间的核心模块之一。它提供了多个类和函数,用于处理日期、时间、时间戳等操作。
常用类
date类
date
类表示日期(年,月,日)。
import datetime
# 创建一个日期对象
d = datetime.date(2022, 3, 14)
# 获取日期的各部分
print(d.year) # 2022
print(d.month) # 3
print(d.day) # 14
# 格式化日期,输出字符串形式
print(d.strftime('%Y-%m-%d')) # '2022-03-14'
time类
time
类表示时间(时,分,秒,毫秒)。
import datetime
# 创建时间对象,默认是当天的时间
t = datetime.time(12, 34, 56)
# 获取时间的各部分
print(t.hour) # 12
print(t.minute) # 34
print(t.second) # 56
# 格式化时间,输出字符串形式
print(t.strftime('%H:%M:%S')) # '12:34:56'
datetime类
datetime
类是 date
和 time
类的结合。
import datetime
# 创建日期时间对象
dt = datetime.datetime(2022, 3, 14, 12, 34, 56)
# 获取日期时间的各部分
print(dt.year) # 2022
print(dt.month) # 3
print(dt.day) # 14
print(dt.hour) # 12
print(dt.minute) # 34
print(dt.second) # 56
# 格式化日期时间,输出字符串形式
print(dt.strftime('%Y-%m-%d %H:%M:%S')) # '2022-03-14 12:34:56'
常用函数
datetime.today()
datetime.today()
函数返回当前日期和时间,相当于 datetime.now(timezone(None))
。它返回一个 datetime
对象。
import datetime
# 返回当前日期和时间
now = datetime.datetime.today()
print(now) # 2022-03-14 12:34:56.123456
datetime.now()
datetime.now()
函数也返回当前日期和时间,与 datetime.today()
函数类似,但它允许传入时区参数,返回一个带时区信息的 datetime
对象。
import datetime
# 返回当前日期和时间,带时区信息
now = datetime.datetime.now()
print(now) # 2022-03-14 12:34:56.123456+08:00
timedelta对象
timedelta
对象表示两个日期或者时间之间的差值。
import datetime
# 创建两个日期对象
d1 = datetime.date(2022, 3, 14)
d2 = datetime.date(2022, 3, 15)
# 计算两个日期之间的差值
delta = d2 - d1
print(delta.days) # 1
# 创建两个时间对象
t1 = datetime.time(12, 0, 0)
t2 = datetime.time(13, 0, 0)
# 计算两个时间之间的差值
delta = datetime.datetime.combine(datetime.date.today(), t2) - datetime.datetime.combine(datetime.date.today(), t1)
print(delta) # 1:00:00
time模块
time
模块提供了时间相关的函数。
常用函数
time.time()
time.time()
函数返回当前时间的时间戳,即距离 1970 年 1 月 1 日 00:00:00 的秒数。
import time
print(time.time()) # 1647800325.1234567
time.localtime()
time.localtime()
函数返回当前时间的本地时间,以元组形式表示。
import time
print(time.localtime()) # time.struct_time(tm_year=2022, tm_mon=3, tm_mday=18, tm_hour=9, tm_min=32, tm_sec=5, tm_wday=4, tm_yday=77, tm_isdst=0)
time.sleep()
time.sleep()
函数可以使程序暂停指定的秒数。
import time
print('before sleep')
time.sleep(3)
print('after sleep')
calendar模块
calendar
模块提供了日历相关的函数。
常用函数
calendar.month()
calendar.month()
函数返回指定年月的月历,以字符串形式表示。被\n
分隔成多行。可以设置参数 w
来指定每个日期所占用的宽度,l
来指定每行的长度。
import calendar
# 显示2022年3月的月历
print(calendar.month(2022, 3))
calendar.weekday()
calendar.weekday()
函数返回指定日期的星期几,星期一为 0,星期天为 6。
import calendar
# 返回 2022 年 3 月 14 日是星期几
weekday = calendar.weekday(2022, 3, 14)
print(weekday) # 0 (星期一)
总结
本文介绍了Python中的主要日期函数和模块,其中 datetime
和 time
模块是处理日期和时间最常用的两个模块,具有强大的功能和灵活的用法。掌握了这些基本知识,你就能够在Python中处理和操作日期数据,并且根据自己的需求进行灵活的调整。