Python---time对象的使用获取时间

 

 

https://www.jb51.net/article/49326.htm

 

1、time.time()  

 它返回当前时间的时间戳(1970纪元后经过的浮点秒数)。

如果调用这个函数,如:  print time.time()  ,那么会输出下面的结果:1234894839.231432

2、time.localtime(secs)    它将一个时间戳作为参数传进去,

返回根据这个时间戳而得到的一个时间元组(struct_time),

参数secs是可选的,默认是当前时间。

如果调用这个函数,如:  print time.localtime() ,那么会输出以下结果:

 

1 time.struct_time(tm_year=2016, tm_mon=11, tm_mday=29, tm_hour=10, tm_min=26, tm_sec=7, tm_wday=6, tm_yday=332, tm_isdst=0)

3、time.strftime(format,t) 它接收一个时间元组,将这个元组转化为格式化的时间字符串。

第二个参数t是可选的,它是一个时间元组,如果没有默认是当前时间元组。如果调用这个函数,如:  

print time.strftime("%b %d %Y %H:%M:%S",time.localtime()) ,那么会输出以下结果:

Mar 29 2021 10:43:38

4、time.mktime(t) 它的功能和time.gmtime()函数的作用相反,它将一个时间元组(struct_time)转化为时间戳,参数t就是传入的时间元组。

5、time.asctime(t) 它将一个时间元组(struct_time)转化为形式如下的时间字符串:Tue Nov 29 10:47:14 2016 。这个字符串的第一个是星期,

 然后是月日,时间,年,这个字符串的意思为:2016年11月29日 周二 10时47分14秒。参数t为传入的时间元组。

 6、time.ctime(sec) 它将一个时间戳转化为形式如下的时间字符串:Tue Nov 29 10:47:14 2016 。 参数sec为传入的时间戳。

 7、time.sleep(secs) 这个函数是线程推迟secs秒,类似于线程休眠。

时间日期格式化符号:


%y         两位数的年份表示(00-99)
%Y         四位数的年份表示(000-9999)
%m       月份(01-12)
%d        月内中的一天(0-31)
%H        24小时制小时数(0-23)
%I         12小时制小时数(01-12)
%M       分钟数(00=59)
%S        秒(00-59)
%a        本地简化星期名称
%A        本地完整星期名称
%b        本地简化的月份名称     /Mar
%B        本地完整的月份名称  /March
%c        本地相应的日期表示和时间表示
%j         年内的一天(001-366)
%p        本地A.M.或P.M.的等价符
%U       一年中的星期数(00-53)星期天为星期的开始
%w        星期(0-6),星期天为星期的开始
%W        一年中的星期数(00-53)星期一为星期的开始
%x         本地相应的日期表示
%X        本地相应的时间表示
%Z        当前时区的名称
%%       %号本身

原文链接:https://blog.csdn.net/u014267402/article/details/53391713

 

 1 import time
 2 
 3 # 格式化成2016-03-20 11:45:39形式
 4 print (time.strftime("%Y-%m-%d %H:%M:%S",time.localtime()))
 5 
 6 # 格式化成Sat Mar 28 22:24:24 2016形式
 7 print (time.strftime("%a %b %d %H:%M:%S %Y", time.localtime()))
 8   
 9 # 将格式字符串转换为时间戳
10 a = "Sat Mar 28 22:24:24 2016"
11 print (time.mktime(time.strptime(a,"%a %b %d %H:%M:%S %Y")))
1 2017-10-07 09:27:14
2 Sat Oct 07 09:27:14 2017
3 1459175064.0

1.在Python中,通常有这几种方式来表示时间:

1)时间戳 2)格式化的时间字符串 3)元组(struct_time)共九个元素。

由于Python的time模块实现主要调用C库,所以各个平台可能有所不同。
2.UTC(Coordinated Universal Time,世界协调时)亦即格林威治天文时间,

世界标准时间。在中国为UTC+8。DST(Daylight Saving Time)即夏令时。
3.时间戳(timestamp)的方式:通常来说,时间戳表示的是从1970年1月1日00:00:00开始按秒计算的偏移量。

我们运行“type(time.time())”,返回的是float类型。返回时间戳方式的函数主要有time(),clock()等。

4.元组(struct_time)方式:struct_time元组共有9个元素,

返回struct_time的函数主要有gmtime(),localtime(),strptime()。

下面列出这种方式元组中的几个元素:

 

 

 #!#  time.asctime([t]):把一个表示时间的元组或者struct_time表示为这种形式:

    'Sun Jun 20 23:21:05 1993'。如果没有参数,将会将time.localtime()作为参数传入。


  >>> time.asctime()
'  Thu May 5 14:55:43 2011'

#!#  time.ctime([secs]):把一个时间戳(按秒计算的浮点数)转化为time.asctime()的形式。

    如果参数未给或者为None的时候,将会默认time.time()为参数。

    它的作用相当于time.asctime(time.localtime(secs))。

1 >>> time.ctime()
2 'Thu May 5 14:58:09 2011'
3 >>> time.ctime(time.time())
4 'Thu May 5 14:58:39 2011'
5 >>> time.ctime(1304579615)
6 'Thu May 5 15:13:35 2011'

 

#!#  time.strftime(format[, t]):把一个代表时间的元组或者struct_time

  (如由time.localtime()和time.gmtime()返回)转化为格式化的时间字符串。

  如果t未指定,将传入time.localtime()。如果元组中任何一个元素越界,

  ValueError的错误将会被抛出。

>>> time.strftime("%Y-%m-%d %X", time.localtime())
'2011-05-05 16:37:06'

#!#  time.strptime(string[, format]):把一个格式化时间字符串转化为struct_time。

    实际上它和strftime()是逆操作。

1 >>> time.strptime('2011-05-05 16:37:06', '%Y-%m-%d %X')
2 time.struct_time(tm_year=2011, tm_mon=5, tm_mday=5, tm_hour=16,
  tm_min=37, tm_sec=6, tm_wday=3, tm_yday=125, tm_isdst=-1)

 

posted @ 2021-03-19 23:39  靠谱杨  阅读(714)  评论(0编辑  收藏  举报