欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

日期和时间

程序员文章站 2022-03-20 21:53:28
#在代码中,我们常常需要和时间打交道。在Python中,与时间处理有关的模块包括time、datetime以及calendar. #在Python中,通常用时间戳、格式化的时间字符串和元组3中方式表示时间。下面分别进行讲解。 1、时间戳 #通常,时间戳(timestamp)表示从1970年1月1日0 ......
#在代码中,我们常常需要和时间打交道。在Python中,与时间处理有关的模块包括time、datetime以及calendar. #在Python中,通常用时间戳、格式化的时间字符串和元组3中方式表示时间。下面分别进行讲解。 1、时间戳 #通常,时间戳(timestamp)表示从1970年1月1日00时00分00秒开始按秒计算的偏移量,也就是从1970年01月01日00时00分00秒(北京时间1970年01月01日08时00分00秒)起到现在的总毫秒数。 #时间戳是一个经加密后形成的凭证文档,包括3部分: ①:需加时间戳的文件的摘要(digest)。 ②:DTS收到文件的日期和时间。 ③:DTS的数字签名。 #一般来说,时间戳产生的过程为:用户首先将需要加时间戳的文件用Hash编码加密形成摘要,然后将该摘要发送到DTS,DTS加入收到文件摘要的日期和时间信息后再对该文件加密(数字签名),最后发送回用户。 #书面签署文件的时间是由签署人自己写上的,而数字时间戳是由认真单位DTS添加的,以DTS收到文件的时间为依据。 #Python3.5中支持的最大时间戳为32535244799(3001-01-01 15:59:59).   2、时间格式化符号 #在Python中,一般用下表所示的格式化符号对时间进行格式化。 格式 含义 备注 %a 本地简化星期名称   %A 本地完整星期名称   %b 本地简化月份名称   %B 本地完整月份名称   %c 本地相应的日期和时间表示   %d 一个月中的第几天(01-31)   %H 一天中的第几个小时(24小时制,00-23)   %I 第几个小时(12小时制,01-12)   %j 一年中的第几天(001-366)   %m 月份(01-12)   %M 分钟数(00-59)   %p 本地AM或PM的相应符 ① %S 秒(01-61) ② %U 一年中的星期数(取值00-53,星期天为一星期的开始),第一个星期 天之前的所有天数都放在第0周 ③ %w 一个星期中的第几天(0-6,0是星期天) ③ %W 和%U基本相同,不同的是%W以星期一为一个星期的开始   %x 本地相应日期   %X 本地相应时间   %y 去掉世纪的年份(00-99)   %Y 完整的年份   %Z 时区的名字(如果不存在为空字符)   %% %字符   #下面介绍上表中3个备注的含义 ①:%p只有与%I配合使用才有效果。 ②:文档中强调确实是0-61,而不是59,闰年秒占两秒。 ③:当使用strptie()函数时,只有这一年的周数和天数确定时%U和%W才会被计算 3、struct_time元组 #struct_time元组共有9个元素:年、月、日、时、分、秒、一年中第几周、一年中第几天、是否为夏令时。 #Python函数用一个元组装起来的9组数字处理时间,也被称作struct_time元组。下表列出了这种结构的属性。   序号 属性 字段 值 0 tm_year 4位年数 如2008 1 tm_moon 月 1-12 2 tm_mday 日 1-31 3 tm_hour 小时 0-23 4 tm_min 分钟 0-59 5 tm_sec 秒 0-61(60或61是闰秒) 6 tm_wday 一周的第几日 0-6(0是周一) 7 tm_yday 一年中第几天 1-366(儒略历) 8 tm_isdst 夏令时 -1、0、1、-1是决定 是否位夏令时的旗帜