需要引入的包
from datetime import datetime,date,
import calendar
- 获取本月最后1日的日期
date(2021,2,calendar.monthrange(2021,2)[1])
这句代码是使用calendar模块的monthrange函数返回最后1天,然后作为date()对象的参数变量。 返回的就是2021年2月份的最后1天的日期,date类型。
time模块
该模块引入是: import time 不是from datetime import time 2.获取当前时间 用time.time()返回操作系统的当前时间。返回值与操作系统有关。
这个结果(称为wall clock time)虽然是小数表示的,人读不友好,但是便于两个日期进行比较运算。结果实际精度与操作系统有关。 便于读的时间,可以用ctime()获取当前的UTC时间。它与你的操作系统的时区的时间一致。 ctime(参数)函数还可以添加参数,没有参数的时候,默认返回当前系统。例如: time.ctime(10000)。返回wall clock time=10000秒对应的日期:Fri Jan 2 11:46:40 1970 你还可以把wall clock time改为便于读写的。把wall clock time作为参数给ctime()即可。代码中的“+20”单位是秒。 获取本地时间:time.localtime()。这是操作系统的当前时间。 ctime()与localtime()获取的时间是一样的。只不过前者返回字符串类型,后者返回struct_time类型。后者可以从中取年、月、日的值。
计算程序运行的时间差
time模块提供了monotonic()函数用于计算程序运行的时间。monotonic()函数获得的时间与你的操作系统的时间没有关系。即使在程序运行期间,你修改了操作系统的时间,也不会影响monotonic()函数返回的时间值。 你要计算一段程序运行的时间。必须如下操作: start = time.monotonic() ……程序代码 end = time.monotonic() print(end-start) #返回运行时间,单位是秒。 相当于,先定义一个开始时间,再定义一个结束时间。
除此之外,你还可以用time.process_time()函数来计算程序的运行时间。process_time()返回处理器的运行时间。 但是与monotonic()函数有区别的是:当程序什么也不做的时候(比如time.sleep(5)),process_time()是不计时的。 如上例所示,两次时间几乎没变化。之所以有一点变化,是因为执行print()耗费了一些时间。但是sleep的5秒没有计入。 但是,如果是程序一直在运行,则会有变化:
``
|