任何数据库本身都有自己的日期/时间函数,做日期比较,最好使用数据库函数比较。
企业建站必须是能够以充分展现企业形象为主要目的,是企业文化与产品对外扩展宣传的重要窗口,一个合格的网站不仅仅能为公司带来巨大的互联网上的收集和信息发布平台,成都创新互联公司面向各种领域:石凉亭等成都网站设计、营销型网站解决方案、网站设计等建站排名服务。
这是因为,运行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 '过期'
1,date是日期,通常就是日历上的年月日,比较大一点的时间单位。
2,time通常就是指秒钟数,即从1970年1月1日至今进过的秒钟数。或者指一天中的时分秒,比较小一点的时间单位。就像你问别人What's the time,别人会告诉你几点几分,而不会告诉你年月日。
3,datetime就是年月日和时分秒,包含以上两者。
datetime模块是用来处理日期时间的,通常是用来进行计算日期,可以很方便的使用加减运算。而time模块主要是用来处理秒钟时间的,当然这个秒钟数也可以转化成日期,获取当前日期通常就是从这个模块获取的。不过说time时,有时候表示的也会很宽泛,因为它的词义就是时间嘛,这个不用太计较的。不过date的意义是确定无疑的。
用大于号,小于号
注意到datatime对着两个运算符重载的很好
python判断日期是否有效使用strptime把字符串转换成date类型,如果正常转换,那么就是合格的日期类型:
举例如下:
正确转换的字符串:
import datetime
datetime.datetime.strptime('24052010', "%d%m%Y").date()
datetime.date(2010, 5, 24)
转换异常的字符串:
import datetime
datetime.datetime.strptime('32052010', "%d%m%Y").date()
datetime.date(2010, 5, 32)
# 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'}
'''