时间模块-time

前言:

Python中对时间进行处理的常用模块有两个:time和datetime!
两者有什么区别?
可以这么认为,datetime是time的豪华加强版,但datetime不是time的进一步封装,同时datetime比time更具平台普适性!
calendar类是处理日历的,就是像墙上挂着的月历那样的格式,这里不说了,目前用的比较少!


一.time模块中时间有哪三种形式?

1. 时间戳:1502186697.249147

time中有哪几种方法能得到?

两种

import time
time.time() #返回的是现在这个时间的时间戳
time.mktime(struct_time) # 返回的是struct_time这个时间元组所代表的时间戳 ,必须带参数

2. 时间元组:time.struct_time(tm_year=2017, tm_mon=8, tm_mday=8, tm_hour=18, tm_min=4, tm_sec=57, tm_wday=1, tm_yday=220, tm_isdst=0)

time中有哪几种方法能得到?

三种

import time
time.localtime(secs) # 常用! 返回的是secs这个时间戳代表的本地(东八区)时间元组
time.gmtime(secs)  # 返回的是secs这个时间戳的utc时间元组(与本地少8个小时)
time.strptime(time_string, format)  #将time_string这个时间字符串转换为时间元组

前两个方法若不带参数,则默认的参数就是此时这个时间度的时间戳
strptime()方法中的format是时间格式,在这个方法中必须强制按照time_string提供的格式来,来告诉time模块要转换的时间字符串是什么样的格式,以便转换

3. 时间字符串:2017-08-08 18:04:57 Tuesday

time中有哪几种方法能得到?

三种

time.ctime(secs)  # 返回的是secs这个时间戳代表的时间字符串,字符串格式是固定的
time.asctime(struct_time) # 返回的是struct_time这个时间元组代表的时间字符串,字符串格式固定
time.strftime(format, struct_time) # 返回的是将时间元组经过"格式"后的时间字符串

上述方法中第一,二个参数默认值是此时的一个时间刻度;
第三个方法中,format是必须有的,struct_time默认值是此时的时间刻度的一个时间元组

二.time模块中时间的三种形式之间的转换:

1.说明:

时间戳能和时间元组之间相互转换,且不用在意格式;
时间元组和时间字符串之间能相互转换,可以变更时间字符串的格式;
时间字符串不能直接转换为时间戳;
时间戳能够转换为时间字符串,但时间字符串的格式不能变更

2.三种形式之间转化的桥梁-时间元组(由两边到中间):

最优的转换方法,就是先将各种形式的时间先转换为时间元组,再进行变更

  • 时间戳--->时间元组:
    time.localtime(secs)
  • 时间字符串--->时间元组:
    time.strptime(time_string, format) # 注:format的格式是必须跟随time_string的格式

3.时间元组转换为时间戳或时间字符串(由中间到两边):

  • 时间元组--->时间戳:
    time.mktime(struct_time)
  • 时间元组--->时间字符串:
    time.strftime(format, struct_time)

注:

time方法中,所有方法的调用对象都是time

你可能感兴趣的:(时间模块-time)