日期与时间
Python有一个名为datetime的模块,用于处理日期和时间。
获取日期与时间
【datetime_object调用的是datetime模块中,datetime类的now方法】
获取日期
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-aindfHx1-1683716851649)(null)]
datetime中的类
datetime模块中常用的类是:
- date类
- time类
- datetime类
- timedelta类
date类
从date类示例化date对象。date对象表示日期(年、月和日)。
获取当前日期
从时间戳获取日期
Unix时间戳是特定日期到UTC的1970年1月1日之间的秒数。可以使用fromtimestamp()方法将时间戳转换为日期。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TZQodAA5-1683716851594)(null)]
单独获取年月日
time类
从time类示例化的时间对象表示本地时间(时、分、秒)。
获取属性
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1kIK7hJ7-1683716851641)(null)]
datetime类
datetime模块有一个名为datetime的类,可以包含来自date和time对象的信息
获取各属性
timedelta类
timedelta对象表示两个日期或时间之间的时差。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fHXdSt5r-1683716851656)(null)]
t3和t6都是<class ‘datetime.timedelta’>类型。
两个timedelta对象的时间差
【创建了两个timedelta对象t1和t2,它们直接相差的天数被打印在屏幕上。另外,timedelta也可以是负的(小时间减去大时间)】
持续时间
使用total_seconds()
方法获得timedelta对象中的总秒数
还可以使用+运算符找到两个日期和时间的总和。同样,您可以将timedelta对象乘以整数和浮点数。
格式日期时间
日期和时间的表示方式在不同的地方,组织等中可能有所不同。在美国,使用mm / dd / yyyy更为常见,而在英国使用dd / mm / yyyy更为常见。
Python有strftime()
和strptime()
方法来处理这个问题。
strftime()-字符串的日期时间对象
strftime()方法是在date、datetime和time类下面定义的。该方法根据给定的日期、日期时间或时间对象创建格式化的字符串。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-y77prDJH-1683716851672)(null)]
【这里%Y,%m,%d,%H等都是格式代码。strftime()方法采用一个或多个格式代码,并根据该代码返回格式化的字符串。在上面的程序中,t,s1和s2是字符串。】
strptime()-日期时间的字符串
strptime()方法从一个给定的字符串(表示日期和时间)创建一个datetime对象。
strptime()方法有两个参数:
- 表示日期和时间的字符串
- 等同于第一个参数的格式代码
%d、%B和%Y格式代码分别用于日、月(全称)和年。
处理时区
使用第三方的pytZ模块
sleep()
在time模块中的一个休眠方法。sleep()函数将当前线程的执行暂停给定的秒数。sleep()以浮点数作为参数。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vEAqFs5q-1683716851613)(null)]
在Python 3.5之前,实际的暂停时间可能小于为time()函数指定的参数。
从Python 3.5开始,暂停时间将至少为指定的秒数。
创建数字时钟
多线程
计算机程序是指令的集合。进程就是这些指令的执行。
线程是进程的子集。一个进程可以具有一个或多个线程。
多线程中的sleep()
sleep()函数将当前线程的执行暂停给定的秒数。
如果是单线程程序,sleep()会中止线程和进程的执行。 但是,该函数在多线程程序中挂起线程而不是整个进程。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZP4QSXjj-1683716851665)(null)]
eep()会中止线程和进程的执行。 但是,该函数在多线程程序中挂起线程而不是整个进程。
[外链图片转存中…(img-z3RKOVEY-1683716848442)]