Python日期时间处理
Python提供的日期时间处理模块有datetime、time、calendar等,可以帮助我们快速实现日期、时间的计算、格式化、转换等操作,下面就介绍一下这些模块的使用方法。
1.datetime模块
datetime模块提供了datetime类,用于表示日期时间,可以使用datetime.now()获取当前日期时间:
import datetime now = datetime.datetime.now() print(now) # 2020-08-12 11:45:41.737332
我们可以使用datetime.date()方法获取当前日期,datetime.time()方法获取当前时间:
date = datetime.date.today() time = datetime.time() print(date) # 2020-08-12 print(time) # 00:00:00.000000
datetime模块还提供了一系列方法用于日期时间的计算,如datetime.timedelta()方法用于计算两个日期时间之间的差值:
date1 = datetime.date(2020, 8, 12) date2 = datetime.date(2020, 8, 15) diff = date2 - date1 print(diff) # 3 days, 0:00:00
2.time模块
time模块提供了time()函数,用于获取当前时间的时间戳:
import time ts = time.time() print(ts) # 1597185941.737332
time模块还提供了struct_time类型,用于表示时间的元组,可以使用time.localtime()函数将时间戳转换为struct_time类型:
ts = time.time() st = time.localtime(ts) print(st) # time.struct_time(tm_year=2020, tm_mon=8, tm_mday=12, tm_hour=11, tm_min=45, tm_sec=41, tm_wday=2, tm_yday=225, tm_isdst=0)
time模块还提供了strftime()函数,用于将struct_time类型转换为字符串:
ts = time.time() st = time.localtime(ts) date_str = time.strftime('%Y-%m-%d', st) time_str = time.strftime('%H:%M:%S', st) print(date_str) # 2020-08-12 print(time_str) # 11:45:41
3.calendar模块
calendar模块提供了calendar类,可以用于操作日历,可以使用calendar.month()方法获取指定月份的日历:
import calendar cal = calendar.month(2020, 8) print(cal) # August 2020 # Mo Tu We Th Fr Sa Su # 1 2 3 # 4 5 6 7 8 9 10 # 11 12 13 14 15 16 17 # 18 19 20 21 22 23 24 # 25 26 27 28 29 30 31
calendar模块还提供了一系列函数用于获取指定日期的信息,如calendar.weekday()函数可以获取指定日期的星期:
import calendar date = datetime.date(2020, 8, 12) weekday = calendar.weekday(date.year, date.month, date.day) print(weekday) # 2
Python提供的datetime、time、calendar等模块可以帮助我们快速实现日期、时间的计算、格式化、转换等操作,使我们可以更加方便地处理日期时间。