python time

来源:互联网 发布:centos php升级 编辑:程序博客网 时间:2024/04/28 01:22

from: http://www.cnblogs.com/wanpython/archive/2010/08/07/1794598.html

你可以试下下面的方式来取得当前时间的时间戳:

import time
print time.time()
输出的结果是:
1279578704.6725271

但是这样是一连串的数字不是我们想要的结果,我们可以利用time模块的格式化时间的方法来处理:
time.localtime(time.time())
用time.localtime()方法,作用是格式化时间戳为本地的时间。
输出的结果是:
time.struct_time(tm_year=2010, tm_mon=7, tm_mday=19, tm_hour=22, tm_min=33, tm_sec=39, tm_wday=0, tm_yday=200, tm_isdst=0)

现在看起来更有希望格式成我们想要的时间了。
time.strftime('%Y-%m-%d',time.localtime(time.time()))

最后用time.strftime()方法,把刚才的一大串信息格式化成我们想要的东西,现在的结果是:
2010-07-19

time.strftime里面有很多参数,可以让你能够更随意的输出自己想要的东西:
下面是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 当前时区的名称

%% %号本身 

=========================================
在应用程序的开发过程中,难免要跟日期、时间处理打交道。如:记录一个复杂算法的执行时间;网络通信中数据包的延迟等等。Python中提供了time, datetime calendar等模块来处理时间日期,今天对time模块中最常用的几个函数作一个介绍。

time.time

  time.time()函数返回从1970年1月1日以来的秒数,这是一个浮点数。

time.sleep

  可以通过调用time.sleep来挂起当前的进程。time.sleep接收一个浮点型参数,表示进程挂起的时间. 

       单位 秒, sleep 10 ms, time.sleep(0.01) 

time.clock

  在windows操作系统上,time.clock() 返回第一次调用该方法到现在的秒数,其精确度高于1微秒。可以使用该函数来记录程序执行的时间。下面是一个简单的例子:

  1. import time  
  2.   
  3. print time.clock() #1  
  4. time.sleep(2)  
  5. print time.clock() #2  
  6. time.sleep(3)  
  7. print time.clock() #3  
  8.   
  9. #---- result  
  10. #3.91111160776e-06  
  11. #1.99919151736  
  12. #4.99922364435  
import time print time.clock() #1 time.sleep(2) print time.clock() #2 time.sleep(3) print time.clock() #3 #---- result #3.91111160776e-06 #1.99919151736 #4.99922364435

time.gmtime

  该函数原型为:time.gmtime([sec]),可选的参数sec表示从1970-1-1以来的秒数。其默认值为 time.time(),函数返回time.struct_time类型的对象。(struct_time是在time模块中定义的表示时间的对象),下 面是一个简单的例子:

  1. import time  
  2.   
  3. print time.gmtime()  #获取当前时间的struct_time对象  
  4. print time.gmtime(time.time() - 24 * 60 * 60)  #获取昨天这个时间的struct_time对象  
  5.   
  6. #---- result  
  7. #time.struct_time(tm_year=2009, tm_mon=6, tm_mday=23, tm_hour=15, tm_min=16, tm_sec=3, tm_wday=1, tm_yday=174, tm_isdst=0)  
  8. #time.struct_time(tm_year=2009, tm_mon=6, tm_mday=22, tm_hour=15, tm_min=16, tm_sec=3, tm_wday=0, tm_yday=173, tm_isdst=0)  
import time print time.gmtime() #获取当前时间的struct_time对象 print time.gmtime(time.time() - 24 * 60 * 60) #获取昨天这个时间的struct_time对象 #---- result #time.struct_time(tm_year=2009, tm_mon=6, tm_mday=23, tm_hour=15, tm_min=16, tm_sec=3, tm_wday=1, tm_yday=174, tm_isdst=0) #time.struct_time(tm_year=2009, tm_mon=6, tm_mday=22, tm_hour=15, tm_min=16, tm_sec=3, tm_wday=0, tm_yday=173, tm_isdst=0)

time.localtime

  time.localtime与time.gmtime非常类似,也返回一个struct_time对象,可以把它看作是gmtime()的本地化版本。

time.mktime

  time.mktime执行与gmtime(), localtime()相反的操作,它接收struct_time对象作为参数,返回用秒数来表示时间的浮点数。例如:

  1. import time  
  2.   
  3. #下面两个函数返回相同(或相近)的结果  
  4. print time.mktime(time.localtime())  
  5. print time.time()  
import time #下面两个函数返回相同(或相近)的结果 print time.mktime(time.localtime()) print time.time()

time.strftime

  time.strftime将日期转换为字符串表示,它的函数原型为:time.strftime(format[, t])。参数format是格式字符串(格式字符串的知识可以参考:time.strftime),可选的参数t是一个struct_time对象。下面的例子将struct_time对象转换为字符串表示:

  1. import time  
  2.   
  3. print time.strftime('%Y-%m-%d %H:%M:%S', time.gmtime())  
  4. print time.strftime('Weekday: %w; Day of the yesr: %j')  
  5.   
  6. #---- result  
  7. #2009-06-23 15:30:53  
  8. #Weekday: 2; Day of the yesr: 174  
import time print time.strftime('%Y-%m-%d %H:%M:%S', time.gmtime()) print time.strftime('Weekday: %w; Day of the yesr: %j') #---- result #2009-06-23 15:30:53 #Weekday: 2; Day of the yesr: 174

time.strptime

  按指定格式解析一个表示时间的字符串,返回struct_time对象。该函数原型为:time.strptime(string, format),两个参数都是字符串,下面是一个简单的例子,演示将一个字符串解析为一个struct_time对象:

  1. import time  
  2.   
  3. print time.strptime('2009-06-23 15:30:53''%Y-%m-%d %H:%M:%S')  
  4.   
  5. #---- result  
  6. #time.struct_time(tm_year=2009, tm_mon=6, tm_mday=23, tm_hour=15, tm_min=30, tm_sec=53, tm_wday=1, tm_yday=174, tm_isdst=-1)  
import time print time.strptime('2009-06-23 15:30:53', '%Y-%m-%d %H:%M:%S') #---- result #time.struct_time(tm_year=2009, tm_mon=6, tm_mday=23, tm_hour=15, tm_min=30, tm_sec=53, tm_wday=1, tm_yday=174, tm_isdst=-1)

--- 
ref: http://blog.csdn.net/kiki113/article/details/4033017

原创粉丝点击