time 模块

时间模块相关术语

  • epoch 是时间开始的点,并且取决于平台。
    对于Unix, epoch 是1970年1月1日00:00:00(UTC)。
    要找出给定平台上的 epoch ,请查看 time.gmtime(0)

  • Unix 纪元秒数 是指自国际标准时间 1970 年 1 月 1 日零时以来经过的总秒数,通常不包括 闰秒。
    在所有符合 POSIX 标准的平台上,闰秒都会从总秒数中被扣除

  • 此模块中的功能可能无法处理纪元之前或将来的远期日期和时间。
    未来的截止点由C库决定;对于32位系统,它通常在2038年

  • UTC是协调世界时(以前称为格林威治标准时间,或GMT)。
    缩写UTC不是错误,而是英语和法语之间的妥协

  • DST是夏令时,在一年中的一部分时间(通常)调整时区一小时。
    DST规则很神奇(由当地法律确定),并且每年都会发生变化。

  • 时间元组:
    (tm_year = 年, tm_mon = 月, tm_mday = 日, tm_hour = 时,
    tm_min = 分, tm_sec = 秒, tm_wday = 周几, tm_yday= 一年中的第几天 ,
    tm_isdst = 是否是夏令时时间)

索引 属性
0 tm_year (例如,1993)
1 tm_mon range [1, 12]
2 tm_mday range [1, 31]
3 tm_hour range [0, 23]
4 tm_min range [0, 59]
5 tm_sec range [0, 61]; 百度闰秒的概念
6 tm_wday range [0, 6] ,周一为 0
7 tm_yday range [1, 366]
8 tm_isdst 0, 1 或 -1;如下所示
N/A tm_zone 时区名称的缩写
N/A tm_gmtoff 以秒为单位的UTC以东偏离

格式化时间字符串

指令 含义
%a 本地化的缩写星期中每日的名称。
%A 本地化的星期中每日的完整名称。
%b 本地化的月缩写名称。
%B 本地化的月完整名称。
%c 本地化的适当日期和时间表示。
%d 十进制数 [01,31] 表示的月中日。
%H 十进制数 [00,23] 表示的小时(24小时制)。
%I 十进制数 [01,12] 表示的小时(12小时制)。
%j 十进制数 [001,366] 表示的年中日。
%m 十进制数 [01,12] 表示的月。
%M 十进制数 [00,59] 表示的分钟。
%p 本地化的 AM 或 PM 。
%S 十进制数 [00,61] 表示的秒。
%U 十进制数 [00,53] 表示的一年中的周数(星期日作为一周的第一天)。 在第一个星期日之前的新年中的所有日子都被认为是在第 0 周。
%w 十进制数 [0(星期日),6] 表示的周中日。
%W 十进制数 [00,53] 表示的一年中的周数(星期一作为一周的第一天)。 在第一个星期一之前的新年中的所有日子被认为是在第 0 周。
%x 本地化的适当日期表示。
%X 本地化的适当时间表示。
%y 十进制数 [00,99] 表示的没有世纪的年份。
%Y 十进制数表示的带世纪的年份。
%z 时区偏移以格式 +HHMM 或 -HHMM 形式的 UTC/GMT 的正或负时差指示,其中H表示十进制小时数字,M表示小数分钟数字 [-23:59, +23:59] 。
%Z 时区名称(如果不存在时区,则不包含字符)。
%% 字面的 '%' 字符。
不常用的属性函数(了解)
  • time.gmtime() # UTC时间元组(世界标准时间)
  • time.timezone # 当前时区(时区的时间差)
  • time.altzone # 当前时区(夏令时)
  • time.daylight # 夏令时状态

时间模块

time.time()      # 本地时间戳
time.localtime() # 本地时间元组            (参数是时间戳,默认为当前时间)
time.mktime()    # 通过时间元组获取时间戳    (参数是时间元组)
time.ctime()     # 本地时间字符串          (参数是时间戳,默认为当前时间)  
time.asctime()   # 通过时间元组获取时间字符串(参数是时间元组)
time.sleep()     # 程序睡眠等待
time.strftime()  # 格式化时间字符串(格式化字符串, 时间元组)
time.strptime()  # 将时间字符串通过指定格式提取到时间元组中(时间字符串, 格式化字符串)
time.perf_counter() # 计算程序运行的时间,连续调用才可用
posted @ 2021-02-08 19:10  EdenWu  阅读(67)  评论(0编辑  收藏  举报