time和datetime的区别
之前,我们已经介绍过了python中的datetime模块,time的功能在很大程度上和datetime比较类似,也是用于处理日期和时间的。但是如果你要处理日期的话,使用datetime要更好。因此建议不需要通过time来处理日期,仅通过time来获取时间就可以了。
使用时间
时间戳:时间戳是一个数字,它记录了从1970年开始,到现在,总共经历了多长时间。因此,在很多情况下,我们不需要记录时间,只需要记录下时间戳,就可以使用时间了。
时间元组:时间元组是time中记录时间的一种方式,通过time.struct_time形式的一个时间元组,记录了时间。
时间元组的参数
tm_year 年
tm_mon 月
tm_mday 日
tm_hour 小时
tm_min 分钟
tm_sec 秒
tm_wday 星期,0代表星期一,6代表星期日
tm_yday 这一天是这一年中的第几天
tm_isdst 夏令时的标志
tm_year=2021, tm_mon=11, tm_mday=6, tm_hour=12, tm_min=50, tm_sec=58, tm_wday=5, tm_yday=310, tm_isdst=0
因此,通过时间戳和时间元组,我们可以得到以下的使用方法
1,获取当前的时间戳
time.time()
2,通过时间戳,得到一个时间元组
time.localtime(时间戳)
3,通过时间元组,得到一个时间戳
time.mktime(时间元组)
时间格式化字符串
时间格式化字符串的使用方式,我们已经在datetime模块中详细介绍过了,因此,如果你还不知道如何使用时间格式化字符串的话,请参考我们之前写过的datetime模块的时间格式化字符串部分。
time.strftime(格式化字符串方式, 时间元组) 得到一个格式化字符串
time.strptime(字符串,格式化字符串的方式) 得到一个时间元组
比如说,我们使用"%Y-%m-%d"这种格式化字符串方式(详细的使用方法在datetime模块中,如果你还不会请一定要去看看!)
import time
t1 = time.strptime("2021-11-06", "%Y-%m-%d") # 通过时间格式化字符串的反向拆分,得到了时间元组
print(t1)
t2 = time.strftime("%y/%m/%d", t1) # 将时间元组组成了新的形式的格式化字符串
print(t2)
让程序暂停一段时间
time.sleep(秒数) 推迟当前线程的运行
1,要注意的是,time.sleep()只会推迟当前线程,而不是暂停整个程序。
2,time.sleep()的推迟时间,并不是精确时间,尤其在你的操作系统进入待机状态后,这段时间计时也可能被停止,而并非是准确的定时功能。