python3 time模块解释
- 2020 年 1 月 10 日
- 筆記
time()
time() 模块继承自 Object 类,datetime() 模块继承自 Object 下面的 Date() 模块。
time 提供的功能更加接近于操作系统层面,其所能表述的日期范围被限定在 1970 – 2038 之间,如果要处理更广的日期,那需要使用 datetime 模块。
time() 内置函数
time.time() 返回当前时间的时间戳 secs
print(time.time()) 1508977857.868619
时间戳可用于 time() 模块的其他内置函数,比如 localtime,ctime,gmtime
time.localtime([secs])
接收时间戳,返回指定时间戳的
当地时间
的时间元组,参数留空,返回当地时间
的当前时间元组
import time t = time.time() # 获得时间戳 a = time.localtime(t) # 获得当地时间的时间元组 b = time.gmtime(t) # 获得格林威治时间的时间元组
time.gmtime()
接收时间戳,返回格林威治天文时间下的时间元组。
import time t = time.time() # 获得时间戳 a = time.localtime(t) # 获得当地时间的时间元组 b = time.gmtime(t) # 获得格林威治时间的时间元组
注意比较 localtime() 和 gmtime() 函数返回结果的区别,两者的差别,就是时区的差别时差。
localtime() 和 gmtime() 都是接收 time.time() 返回的时间戳,返回结果都是一个时间元组。 而接收时间元组的函数有 asctime,strftime,
time.asctime([tupletime])
接受时间元组并返回一个可读的形式为”Tue Dec 11 18:07:14 2008”(2008年12月11日 周二18时07分14秒)的24个字符的字符串。
import time t = time.time() # 获得时间戳 a = time.localtime(t) # 获得当地时间的时间元组 b = time.gmtime(t) # 获得格林威治时间的时间元组 print('time.asctime %s' %(time.asctime(a))) # 获得时间的字符串 print('time.asctime %s' %(time.asctime(b))) # 获得时间的字符串
time.strftime(srt_format[,tupletime])
接收时间元组,返回当地时间,第一个参数是一个字符串形式的格式化字符
import time t = time.time() # 获得时间戳 a = time.localtime(t) # 获得当地时间的时间元组 b = time.gmtime(t) # 获得格林威治时间的时间元组 print('time.asctime %s' %(time.asctime(a))) # 获得时间的字符串 print('time.asctime %s' %(time.asctime(b))) # 获得时间的字符串 print('time.strftime %s' %(time.strftime('%Y-%m-%d %H:%M:%S',a))) # 获得指定格式的等地时间
结果
time.asctime Thu Oct 26 08:49:50 2017 time.asctime Thu Oct 26 00:49:50 2017 time.strftime 2017-10-26 08:49:50
日期格式化符号
格式符号统一适用于 datetime() 模块,常用的有 %Y-%m-%d %H:%M:%S 以及 %c (标准时间)
格式符 说明 %a 星期的英文单词的缩写:如星期一, 则返回 Mon %A 星期的英文单词的全拼:如星期一,返回 Monday %b 月份的英文单词的缩写:如一月, 则返回 Jan %B 月份的引文单词的缩写:如一月, 则返回 January %c 返回datetime的字符串表示,如03/08/15 23:01:26 %d 返回的是当前时间是当前月的第几天 %f 微秒的表示: 范围: [0,999999] %H 以24小时制表示当前小时 %I 以12小时制表示当前小时 %j 返回当天是当年的第几天 范围[001,366] %m 返回月份 范围[0,12] %M 返回分钟数 范围 [0,59] %P 返回是上午还是下午–AM or PM %S 返回十进制的秒数 范围 [0,61] %U 返回当周是当年的第几周 以周日为第一天 %W 返回当周是当年的第几周 以周一为第一天 %w 当天在当周的天数,范围为[0, 6],6表示星期天 %x 日期的字符串表示 :03/08/15 %X 时间的字符串表示 :23:22:08 %y 两个数字表示的年份 15 %Y 四个数字表示的年份 2015 %z 与utc时间的间隔 (如果是本地时间,返回空字符串) %Z 时区名称(如果是本地时间,返回空字符串)
time.sleep(secs) 最为常用
休眠,时间暂停指定的秒数
import time print('当前时间 %s' %(time.ctime())) time.sleep(3) print('当前时间 %s' %(time.ctime()))