# time模块实现, 也是自带的
创新互联专注于钟山企业网站建设,成都响应式网站建设公司,成都商城网站开发。钟山网站建设公司,为钟山等地区提供建站服务。全流程按需制作,专业设计,全程项目跟踪,创新互联专业和态度为您提供的服务
# 字符串不好计算~但是时间戳是固定的呀...
# 计算结果中, 假定今天24日, 输入24, 输出0天, 输入25, 输出-1天
import time
def f(tm):
stamp = time.mktime(time.strptime(tm, "%Y%m%d"))
diff = int((time.time() - stamp) // 86400)
if diff = 180:
return {tm: str(diff)}
else:
d = {}
while diff 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)
return d
if __name__ == '__main__':
tm = '20160325'
print(f(tm))
tm = '20171015'
print(f(tm))
# 结果输出, 注意: 字典是没有固定顺序的
'''
{'20160921': 180, '20170320': 180, '20170916': '38', '20160325': 180}
{'20171015': '9'}
'''
1,date是日期,通常就是日历上的年月日,比较大一点的时间单位。
2,time通常就是指秒钟数,即从1970年1月1日至今进过的秒钟数。或者指一天中的时分秒,比较小一点的时间单位。就像你问别人What's the time,别人会告诉你几点几分,而不会告诉你年月日。
3,datetime就是年月日和时分秒,包含以上两者。
datetime模块是用来处理日期时间的,通常是用来进行计算日期,可以很方便的使用加减运算。而time模块主要是用来处理秒钟时间的,当然这个秒钟数也可以转化成日期,获取当前日期通常就是从这个模块获取的。不过说time时,有时候表示的也会很宽泛,因为它的词义就是时间嘛,这个不用太计较的。不过date的意义是确定无疑的。
任何数据库本身都有自己的日期/时间函数,做日期比较,最好使用数据库函数比较。
这是因为,运行python的主机和数据库主机可能是不同的,系统时间也不一定同步。
不过,若是非要用python来实现,可以这样做:
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import time
def now():
return time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time()))
s = '2015-10-26 00:00:00'
if now() s:
print '过期'