python学习笔记11:时间相关模块

时间相关模块

  • time.time(): 返回一个时间戳
  • time.asctime([t]): 转换gmtime()和localtime()返回的元组或struct_time为string.
  • time.clock(): 在第一次调用的时候, 返回程序运行的时间. 第二次之后返回与之前的间隔.
  • time.ctime([secs]): 将时间戳转换为时间字符串, 如没有提供则返回当前的时间字符串,并与asctime(localtime())一样.
  • time.gmtime([secs]): 将时间戳转化为, UTC 时区的struct_time.
  • time.localtime([secs]): 类似gmtime()但会把他转换成本地时区.
  • time.mktime(t): struct_time 转化为时间戳.
  • time.sleep(secs): 线程推迟指定时间, 以秒为单位.
  • time.strftime(format,[t]): 根据参数转换一个sturc_time或元组为字符串.
  • time.strptime(string,[format]): 与strftime相反,返回一个struct_time.
 1 import time
 2 
 3 print(time.time())  #获取当前时间戳【1589616847  从unix元年(计算机发明的时间)到现在过了多少秒】
 4 print(time.strftime('%Y-%m-%d %H:%M:%S'))  #获取格式化好的时间
 5 
 6 # 时间元祖:时间戳和格式化时间转换必须通过时间元祖转换
 7 result = time.localtime(1589617100)  #把时间戳转换成时间元祖
 8 print(time.strftime('%Y-%m-%d %H:%M:%S', result))  #把时间元祖转换成格式化时间
 9 result2 = time.strptime('2020-05-16 16:23:59', '%Y-%m-%d %H:%M:%S')  #把格式化时间转换成时间元祖
10 print(time.mktime(result2))  #把时间元祖转换成时间戳
11 
12 time.sleep(10)  #等待时间

 格式化时间和时间戳的转换:

 1 def str_to_timezone(str=None, format="%Y-%m-%d %H:%M:%S"):
 2     # 这个函数是格式化时间转时间戳的,如果不传参数默认返回当前时间戳
 3     if str:
 4         time_tuple = time.strftime((str, format))
 5         result = time.mktime(time_tuple)
 6     else:
 7         result = time.time()
 8     return int(result)
 9 
10 
11 def timezone_to_str(timezone=None, format="%Y-%m-%d %H:%M:%S"):
12     # 这个函数是时间戳转格式化时间,如果不传参数,默认返回当前时间
13     if timezone:
14         time_tuple = time.localtime(timezone)
15         result = time.strftime(format, time_tuple)
16     else:
17         result = time.strftime(format)
18     return result

 

posted @ 2020-05-18 23:36  张小歪  阅读(137)  评论(0)    收藏  举报