2014年5月5日星期一

Python中time模块的学习

python中的time模块提供了对时间的控制,读取,修改。

time()函数返回的是自从epoch之后的秒数,是一个float型的数据,对于unix系统来说epoch是1970年1月1日的0时。


  • UTC:格林尼治时间
  • DTS:夏令时
  • Localtime:本机时间



From
To
Use
seconds since the epoch 
seconds since the epoch 
struct_time in UTC 
struct_time in local time
struct_time in UTC 
struct_time in local time 
seconds since the epoch 
seconds since the epoch
gmtime()
localtime()
calendar.timegm()
mktime()


gmtime()以及localtime()返回的是一个9位的元组,如下例子:

time.struct_time(tm_year=2014, tm_mon=5, tm_mday=5, tm_hour=0, tm_min=19, tm_sec=49, tm_wday=0, tm_yday=125, tm_isdst=1)

分别为[年,月,日,小时,分,秒,星期,一年中的第几天,DST(是否夏令时)
range分别为:

  • 年,四位数
  • 月,1-12
  • 日,1-31
  • 小时,0-23
  • 分,0-59
  • 秒,0-59
  • 星期,0-6
  • 第几天,1-366
  • DST,0,1,-1
DST的0 表示不在夏令时时区,1表示在夏令时时区,-1表示需要根据date和time来猜测mktime()

函数介绍:
  • asctime():将一个struct_time转换成一个字符串,asctime([tuple]) -> string.
  • sleep(),让解释器休息待命n秒钟
  • clock(),clock() -> floating point number
      该函数有两个功能,
      在第一次调用的时候,返回的是程序运行的实际时间;
      以第二次之后的调用,返回的是自第一次调用后,到这次调用的时间间隔
  • ctime(),ctime(seconds) -> string,将一个时间戳(默认为当前时间)转换成一个时间字符串
  • gmtime(),gmtime([seconds]) -> (tm_year, tm_mon, tm_day, tm_hour, tm_min,tm_sec, tm_wday, tm_yday, tm_isdst)  将一个时间戳转换成一个UTC时区(0时区)的struct_time,如果seconds参数未输入,则以当前时间为转换标准
  • localtime(),localtime([seconds])-> (tm_year,tm_mon,tm_day,tm_hour,tm_min,tm_sec,tm_wday,tm_yday,tm_isdst)                         将一个时间戳转换成一个当前时区的struct_time,如果seconds参数未输入,则以当前时间为转换标准
  • mktime(...)
    mktime(tuple) -> floating point number
    将一个以struct_time转换为时间戳
  • strftime(...)
      strftime(format[, tuple]) -> string
      将指定的struct_time(默认为当前时间),根据指定的格式化字符串输出
      python中时间日期格式化符号:
      %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 本地简化的月份名称
      %B 本地完整的月份名称
      %c 本地相应的日期表示和时间表示
      %j 年内的一天(001-366)
      %p 本地A.M.或P.M.的等价符
      %U 一年中的星期数(00-53)星期天为星期的开始
      %w 星期(0-6),星期天为星期的开始
      %W 一年中的星期数(00-53)星期一为星期的开始
      %x 本地相应的日期表示
      %X 本地相应的时间表示
      %Z 当前时区的名称
      %% %号本身 

没有评论:

发表评论