|
发表于 2017-7-19 17:17:29
|
显示全部楼层
你把1-01-01这种也当做时间日期?
那你就没法算了,因为日期函数只会计算1000以后的年份,之前的不计算,也就是说,你要自己去判断那些年份的中哪些是润年,那些有2-29的日期,然后要重写大小月
总之,不科学
科学的计算方法是这样的:- import time
- def TDate(s):
- try:
- t = time.strptime(s, "%Y-%m-%d")
- except:
- print("错误信息")
- else:
- y,m,d = t[0:3]
- if m < 10:
- m = "0"+str(m)
- if d < 10:
- d = "0"+str(d)
- result = "-".join(map(str,[y,m,d]))
- if k == result:
- print("输出结果:{}".format(k))
- else:
- print("输出结果:{},应该是{}".format(k,result))
复制代码
思路就是,让Python自带的日期模块去检验这个日期字符串是否符合日期标准
符合标准的按照你的输入要求输出,不符合的自动报错就行
自己写标准你要写的猴年马月
|
|