python日期函数大全

  • Post category:Python

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 类是 datetime 类的结合。

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中的主要日期函数和模块,其中 datetimetime 模块是处理日期和时间最常用的两个模块,具有强大的功能和灵活的用法。掌握了这些基本知识,你就能够在Python中处理和操作日期数据,并且根据自己的需求进行灵活的调整。