Python 时间和日期
Python 日期和时间
- 概述
- 时间元组struct_time
- 获取当前时间
- 获取格式化的时间
- 格式化日期
- 日期格式化符号
- 获取某月日历
- Time 模块
- 日历(Calendar)模块
概述
Python 提供一个 time 和 calendar 模块可以用于格式化日期和时间。
时间间隔是以秒为单位的浮点小数。
每个时间戳都以自从1970年1月1日午夜(历元)经过了多长时间来表示。
import time # 引入time模块
ticks = time.time()
print('当前时间戳为:',ticks)
'''
输出结果:
当前时间戳为: 1733148452.0064373
'''
时间元组struct_time
获取当前时间
import time # 引入time模块
ticks = time.time()
print('当前时间戳为:',ticks)
localtime = time.localtime(time.time())
print('本地时间为:',localtime)
'''
输出结果:
当前时间戳为: 1733148733.611871
本地时间为: time.struct_time(tm_year=2024, tm_mon=12, tm_mday=2, tm_hour=22, tm_min=12, tm_sec=13, tm_wday=0, tm_yday=337, tm_isdst=0)
'''
获取格式化的时间
import time # 引入time模块
ticks = time.time()
print('当前时间戳为:',ticks)
localtime = time.localtime(time.time())
print('本地时间为:',localtime)
asctime = time.asctime(time.localtime(time.time()))
print('时间格式为:',asctime)
'''
输出结果:
当前时间戳为: 1733148910.1994007
本地时间为: time.struct_time(tm_year=2024, tm_mon=12, tm_mday=2, tm_hour=22, tm_min=15, tm_sec=10, tm_wday=0, tm_yday=337, tm_isdst=0)
时间格式为: Mon Dec 2 22:15:10 2024
'''
格式化日期
import time # 引入time模块
print(time.strftime("%y-%m-%d %H:%M:%S",time.localtime()))
print(time.strftime("%a %b %d %H:%M:%S %Y",time.localtime()))
'''
输出结果:
24-12-02 22:21:17
Mon Dec 02 22:21:17 2024
'''
日期格式化符号
符号 | 含义 | 备注 |
---|---|---|
%y | 两位数的年份表示 | (00-99) |
%Y | 四位数的年份表示 | (000-9999) |
%m | 月份 | (01-12) |
%d | 月内中的一天 | (0-31) |
%H | 24小时制小时数 | (0-23) |
%I | 12小时制小时数 | (01-12) |
%M | 分钟数 | (00-59) |
%S | 秒 | (00-59) |
%a | 本地简化星期名称 | |
%A | 本地完整星期名称 | |
%b | 本地简化的月份名称 | |
%B | 本地完整的月份名称 | |
%c | 本地相应的日期表示和时间表示 | |
%j | 年内的一天 | (001-366) |
%p | 本地A.M.或P.M.的等价符 | |
%U | 一年中的星期数 | (00-53)星期天为星期的开始 |
%w | 星期 | (0-6),星期天为星期的开始 |
%W | 一年中的星期数 | (00-53)星期一为星期的开始 |
%x | 本地相应的日期表示 | |
%X | 本地相应的时间表示 | |
%Z | 当前时区的名称 | |
%% | %号本身 |
获取某月日历
Calendar模块有很广泛的方法用来处理年历和月历,例如打印某月的月历
import calendar
cal = calendar.month(2024, 12)
print("以下输出2024年12月份的日历:", cal)
'''
以下输出2024年12月份的日历: December 2024
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
'''
Time 模块