python 的时间怎么对比

Python035

python 的时间怎么对比,第1张

在Python编程中,使用datetime模块计算两个时间的差:

1

2

3

4

5

6

7

8

>>>import datetime

>>>d1=datetime.datetime(2015,7,5)

>>>d2=datetime.datetime(2005,7,4)

>>>(d1-d2).seconds

//结果86400s

# 计算两个时间的间隔天数

# 注意:输入月份和天时,不能输入08,09等,会被识别为 8 进制而出错!(8进制是不超过07的)

# 解决办法:要把月份和天前面的0去掉。

举例,一个时间偏移后的比较情况:

1 #-*-coding=utf-8-*-

2 __author__='zhongtang'

3

4 '''

5 时间戳与字符串的互相转换

6 '''

7

8 import time

9

10 localtime1=time.localtime()

11 time.sleep(5)

12 localtime2=time.localtime(time.time())

13

14 print type(localtime1),localtime1

15 print type(localtime2),localtime2

16

17 gmtime=time.gmtime(time.time())

18 print type(gmtime),gmtime

19

20

21 strtime1='20160518010101'

22 strtime2='20160518020101'

23

24 #字符串变成时间数据结构

25 localtime1=time.strptime(strtime1,'%Y%m%d%H%M%S')

26 localtime2=time.strptime(strtime2,'%Y%m%d%H%M%S')

27

28 print type(localtime1),localtime1

29 print type(localtime2),localtime2

30

31

32 #从时间数据结构转换成时间戳

33 time1= time.mktime(localtime1)

34 time2= time.mktime(localtime2)

35

36 print type(time1),time1

37 print type(time2),time2

38

39 #时间戳可以直接相减,得到以秒为单位的差额

40 print time2-time1

 

 

输出结果

1 <type 'time.struct_time'>time.struct_time(tm_year=2016, tm_mon=5, tm_mday=19, tm_hour=9, tm_min=9, tm_sec=30, tm_wday=3, tm_yday=140, tm_isdst=0)

2 <type 'time.struct_time'>time.struct_time(tm_year=2016, tm_mon=5, tm_mday=19, tm_hour=9, tm_min=9, tm_sec=35, tm_wday=3, tm_yday=140, tm_isdst=0)

3 <type 'time.struct_time'>time.struct_time(tm_year=2016, tm_mon=5, tm_mday=19, tm_hour=1, tm_min=9, tm_sec=35, tm_wday=3, tm_yday=140, tm_isdst=0)

4 <type 'time.struct_time'>time.struct_time(tm_year=2016, tm_mon=5, tm_mday=18, tm_hour=1, tm_min=1, tm_sec=1, tm_wday=2, tm_yday=139, tm_isdst=-1)

5 <type 'time.struct_time'>time.struct_time(tm_year=2016, tm_mon=5, tm_mday=18, tm_hour=2, tm_min=1, tm_sec=1, tm_wday=2, tm_yday=139, tm_isdst=-1)

6 <type 'float'>1463504461.0

7 <type 'float'>1463508061.0

8 3600.0

python中的最小时间单位是毫秒,没办法精确到微秒

用time包的time()函数可以获得当前计算机的挂钟时间,利用它可以获得时间差

import time

time1 = time.time()

#要度量时间的程序

time2 = time.time()

print time2 - time1