当前位置:首页 » 编程语言 » python日期比较

python日期比较

发布时间: 2023-01-26 08:25:12

python怎样比较两个字符串时间

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

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日期获取秒数

1、使用new Date()获取当前日期,new Date().getTime()获取当前毫秒数

2、计算公式,等于获取的当前日期减去或者加上一天的毫秒数。一天的毫秒数的计算公式:24小时*60分钟*60秒*1000毫秒,也是86400000毫秒。

举例:

Date curDate = new Date();

var preDate = new Date(curDate.getTime() - 24*60*60*1000); //前一天

var nextDate = new Date(curDate.getTime() + 24*60*60*1000); //后一天

以下图片使用后台输出表示。

(2)python日期比较扩展阅读

var myDate = new Date();

myDate.getYear(); //获取当前年份(2位)

myDate.getFullYear(); //获取完整的年份(4位,1970-????)

myDate.getMonth(); //获取当前月份(0-11,0代表1月)

myDate.getDate(); //获取当前日(1-31)

myDate.getDay(); //获取当前星期X(0-6,0代表星期天)

myDate.getTime(); //获取当前时间(从1970.1.1开始的毫秒数)

myDate.getHours(); //获取当前小时数(0-23)

myDate.getMinutes(); //获取当前分钟数(0-59)

myDate.getSeconds(); //获取当前秒数(0-59)

myDate.getMilliseconds(); //获取当前毫秒数(0-999)

myDate.toLocaleDateString(); //获取当前日期

var mytime=myDate.toLocaleTimeString(); //获取当前时间

myDate.toLocaleString( ); //获取日期与时间

Date.prototype.isLeapYear 判断闰年

Date.prototype.Format 日期格式化

Date.prototype.DateAdd 日期计算

Date.prototype.DateDiff 比较日期差

Date.prototype.toString 日期转字符串

Date.prototype.toArray 日期分割为数组

Date.prototype.DatePart 取日期的部分信息

Date.prototype.MaxDayOfDate 取日期所在月的最大天数

Date.prototype.WeekNumOfYear 判断日期所在年的第几周

StringToDate 字符串转日期型

IsValidDate 验证日期有效性

CheckDateTime 完整日期时间检查

daysBetween 日期天数差

⑶ python3 环境,如何计算时间的比较和加减

显示5分钟前的时间

print(datetime.datetime.now()-datetime.timedelta(seconds=5*60))

构造时间并显示时间差

d=datetime.datetime.now()
d=d.replace(hour=9,minute=30,second=0)
print((datetime.datetime.now()-d))

⑷ python timestamp 判断日期是不是同一天

timestamp
时间戳类型:自1970年1月1日(00:00:00 GMT)以来的秒数
----------------------------------------------
>>> time.time()
1355749338.05917
可以尝试转化为str格式看日期字段是否一致
timestamp = time.time()
time_tuple = time.localtime(timestamp)
time_str = time.strftime("%Y-%m-%d", time_tuple)
比较time_str就可以了

⑸ python日期加减比较问题请教

#time模块实现,也是自带的
#字符串不好计算~但是时间戳是固定的呀...
#计算结果中,假定今天24日,输入24,输出0天,输入25,输出-1天
importtime


deff(tm):
stamp=time.mktime(time.strptime(tm,"%Y%m%d"))
diff=int((time.time()-stamp)//86400)
ifdiff<=180:
return{tm:str(diff)}
else:
d={}
whilediff>180:
d[tm]=180
stamp+=180*86400
diff=int((time.time()-stamp)//86400)
#注意这里time.gmtime()返回的是0时区日期,需要处理时区问题
tm=time.strftime("%Y%m%d",time.gmtime(stamp-time.timezone))
else:
d[tm]=str(diff)
returnd

if__name__=='__main__':
tm='20160325'
print(f(tm))
tm='20171015'
print(f(tm))
#结果输出,注意:字典是没有固定顺序的
'''
{'20160921':180,'20170320':180,'20170916':'38','20160325':180}
{'20171015':'9'}
'''

⑹ python 的时间怎么对比

在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去掉。

⑺ 如何在python中比较微秒时间差

python中的最小时间单位是毫秒,没办法精确到微秒
用time包的time()函数可以获得当前计算机的挂钟时间,利用它可以获得时间差
import time
time1 = time.time()
#要度量时间的程序
time2 = time.time()
print time2 - time1

⑻ python两个日期差了多少天

import datetime#首行输入,导入模块
date1=datetime.date(year,month,day)#这里面year,month,day是代表年,月,日,年必须写成2021这种格式,都必须写成数字
date2=datetime.date(year,month,day)#同上,这个是第二个日期(后面的),上面的是第一个日期(前面的)
delta=date2-date1#这是两个日期相减,是一个时间差对象
diffdays=delta.total_seconds()//86400#差的秒数除以86400即可
print(diffdays)#打印差的天数

⑼ python 怎么判断一个时间是否过期

任何数据库本身都有自己的日期/时间函数,做日期比较,最好使用数据库函数比较。

这是因为,运行python的主机和数据库主机可能是不同的,系统时间也不一定同步。


不过,若是非要用python来实现,可以这样做:

#!/usr/bin/envpython
#-*-coding:utf-8-*-

importtime

defnow():
returntime.strftime('%Y-%m-%d%H:%M:%S',time.localtime(time.time()))

s='2015-10-2600:00:00'
ifnow()>s:
print'过期'

⑽ Python中处理时间的几种方法小结

python中的时间模块主要有time, datetime。

I, time模块
time模块中包含了四种时间格式:
float格式,即给定时间相对于epoch增加的秒数
tuple格式,一个九元组 (tm_year, tm_mon, tm_mday, tm_hour, tm_min, tm_sec, tm_wday, tm_yday, tm_isdst)
string格式,'Mon Feb 6 15:00:06 2012'
format格式,以指定的格式生成的时间
针对这几种时间格式,time模块提供了函数在格式之间相互转换。
asctime(tuple) ->string
ctime(float) ->string
gmtime(float) ->tuple
localtime(float) ->tuple
mktime(tuple) ->float
strftime(format, tuple) ->format string
strptime(formatstring, format) ->tuple
time() -> float
上述函数中,除了time()函数直接返回当前时间相对于epoch的秒数外,其他函数都要求有时间的输入,如果没有输入,则默认使用当前时间。
另外,strftime和strptime中的format使用下面的格式:
%a 英文星期简写
%A 英文星期的完全
%b 英文月份的简写
%B 英文月份的完全
%c 显示本地日期时间
%d 日期,取1-31
%H 小时, 0-23
%I 小时, 0-12
%m 月, 01 -12
%M 分钟,1-59
%j 年中当天的天数
%w 显示今天是星期几
%W 第几周
%x 当天日期
%X 本地的当天时间
%y 年份 00-99间
%Y 年份的完整拼写
%S 秒(00-59)

除了上述的时间转换函数之外,模块还提供了下面的函数:
clock() 返回进程的创建时间,以秒计数的float
sleep(float) sleep一段时间,以秒计数
tzset() 更改时区

II, datetime
datetime模块定义了下面这几个类:
datetime.date:表示日期的类。常用的属性有year, month, day;datetime.time:表示时间的类。常用的属性有hour, minute, second, microsecond;datetime.datetime:表示日期时间。datetime.timedelta:表示时间间隔,即两个时间点之间的长度。datetime.tzinfo:与时区有关的相关信息。(这里不详细充分讨论该类,感兴趣的童鞋可以参考python手册)
注 :上面这些类型的对象都是不可变(immutable)的。
下面详细介绍这些类的使用方式。
date类
date类表示一个日期。日期由年、月、日组成(地球人都知道~~)。date类的构造函数如下:
class datetime.date(year, month, day):参数的意义就不多作解释了,只是有几点要注意一下:
year的范围是[MINYEAR, MAXYEAR],即[1, 9999];month的范围是[1, 12]。(月份是从1开始的,不是从0开始的~_~);day的最大值根据给定的year, month参数来决定。例如闰年2月份有29天;
date类定义了一些常用的类方法与类属性,方便我们操作:
date.max、date.min:date对象所能表示的最大、最小日期;date.resolution:date对象表示日期的最小单位。这里是天。date.today():返回一个表示当前本地日期的date对象;date.fromtimestamp(timestamp):根据给定的时间戮,返回一个date对象;datetime.fromordinal(ordinal):将Gregorian日历时间转换为date对象;(Gregorian Calendar :一种日历表示方法,类似于我国的农历,西方国家使用比较多,此处不详细展开讨论。)

热点内容
java返回this 发布:2025-10-20 08:28:16 浏览:583
制作脚本网站 发布:2025-10-20 08:17:34 浏览:877
python中的init方法 发布:2025-10-20 08:17:33 浏览:572
图案密码什么意思 发布:2025-10-20 08:16:56 浏览:758
怎么清理微信视频缓存 发布:2025-10-20 08:12:37 浏览:674
c语言编译器怎么看执行过程 发布:2025-10-20 08:00:32 浏览:1001
邮箱如何填写发信服务器 发布:2025-10-20 07:45:27 浏览:245
shell脚本入门案例 发布:2025-10-20 07:44:45 浏览:104
怎么上传照片浏览上传 发布:2025-10-20 07:44:03 浏览:796
python股票数据获取 发布:2025-10-20 07:39:44 浏览:702