模块-时间模块
模块-时间模块
- 导入:
import time |
- 方法:
_STRUCT_TM_ITEMS __doc__ __loader__ __name__ __package__ __spec__ altzone asctime clock ctime daylight get_clock_info gmtime localtime mktime monotonic perf_counter process_time sleep strftime strptime struct_time time timezone tzname |
- 常用方法:
- time.time()获得时间戳
In [3]: time.time() Out[3]: 1508852319.6068738 In [4]: help(time.time) Help on built-in function time in module time: time(...) time() -> floating point number
Return the current time in seconds since the Epoch. Fractions of a second may be present if the system clock provides them. |
- time.clock() 返回处理器时间
In [6]: time.clock() Out[6]: 4.105489737712577e-07 |
- time.gmtime()结构化时间,BUT,这个时间是标准世界时间
In [8]: time.gmtime() Out[8]: time.struct_time(tm_year=2017, tm_mon=10, tm_mday=24, tm_hour=13, tm_min=44, tm_sec=15, tm_wday=1, tm_yday=297, tm_isdst=0) |
- time.localtime() ps当前时间2017年10月24日21:49:49
In [9]: time.localtime() Out[9]: time.struct_time(tm_year=2017, tm_mon=10, tm_mday=24, tm_hour=21, tm_min=47, tm_sec=24, tm_wday=1, tm_yday=297, tm_isdst=0) In [11]: time.localtime().tm_mon Out[11]: 10
In [12]: time.localtime().tm_mday Out[12]: 24 |
- strftime() 可以只传入一个参数
In [16]: time.strftime("%Y-%m-%d %H:%M:%S",time.localtime()) Out[16]: '2017-10-24 21:59:02' In [17]: time.strftime("%Y-%m-%d %H:%M:%S") Out[17]: '2017-10-24 22:00:21' |
- strptime()将格式化时间转化为结构化时间
In [18]: time.strptime('2017-10-24 22:00:21',"%Y-%m-%d %H:%M:%S") Out[18]: time.struct_time(tm_year=2017, tm_mon=10, tm_mday=24, tm_hour=22, tm_min=0, tm_sec=21, tm_wday=1, tm_yday=297, tm_isdst=-1) |
- 将时间戳转换为时间
In [23]: time.ctime(time.time()+1000) Out[23]: 'Tue Oct 24 22:24:26 2017' |
- 将结构化时间转化成时间戳
In [25]: time.mktime(time.localtime()) Out[25]: 1508854287.0 |
- 方法总结
time() -- return current time in seconds since the Epoch as a float clock() -- return CPU time since process start as a float sleep() -- delay for a number of seconds given as a float gmtime() -- convert seconds since Epoch to UTC tuple localtime() -- convert seconds since Epoch to local time tuple asctime() -- convert time tuple to string ctime() -- convert time in seconds to string mktime() -- convert local time tuple to seconds since Epoch strftime() -- convert time tuple to string according to format specification strptime() -- parse string to time tuple according to format specification tzset() -- change the local timezone |
Tip1:时间戳转时间
In [47]: time.strftime("%Y-%m-%d %H:%M:%S",time.localtime(123456789)) Out[47]: '1973-11-30 05:33:09' |
Tip2:时间转时间戳:
In [50]: time.mktime(time.strptime('1973-11-30 05:33:09',"%Y-%m-%d %H:%M:%S")) Out[50]: 123456789.0 |