设为首页 收藏本站
查看: 605|回复: 0

[经验分享] python的datetime时间系统的处理

[复制链接]
发表于 2017-5-4 10:52:42 | 显示全部楼层 |阅读模式
  import datetime
data =[{'productdate': datetime.datetime(2009, 4, 19, 0, 0)}]

for o in data:
    print o.get('productdate')
   



如果没加 import datetime系统库就会报错


Traceback (most recent call last):
  File "D:\workspace\spaq\test1.py", line 2, in <module>
    data =[{'productdate': datetime.datetime(2009, 4, 19, 0, 0)}]
NameError: name 'datetime' is not defined








1.#-*-coding:utf-8-*-  
2.import datetime, calendar  
3. 
4.def getYesterday():  
5.   today=datetime.date.today()  
6.   oneday=datetime.timedelta(days=1)  
7.   yesterday=today-oneday   
8.   return yesterday  
9.     
10.def getToday():  
11.    return datetime.date.today()    
12. 
13.#获取给定参数的前几天的日期,返回一个list  
14.def getDaysByNum(num):  
15.    today=datetime.date.today()  
16.    oneday=datetime.timedelta(days=1)      
17.    li=[]       
18.    for i in range(0,num):  
19.        #今天减一天,一天一天减  
20.        today=today-oneday  
21.        #把日期转换成字符串  
22.        #result=datetostr(today)  
23.        li.append(datetostr(today))  
24.    return li  
25. 
26.#将字符串转换成datetime类型  
27.def strtodatetime(datestr,format):      
28.    return datetime.datetime.strptime(datestr,format)  
29. 
30.#时间转换成字符串,格式为2008-08-02  
31.def datetostr(date):    
32.    return   str(date)[0:10]  
33. 
34.#两个日期相隔多少天,例:2008-10-03和2008-10-01是相隔两天  
35.def datediff(beginDate,endDate):  
36.    format="%Y-%m-%d";  
37.    bd=strtodatetime(beginDate,format)  
38.    ed=strtodatetime(endDate,format)      
39.    oneday=datetime.timedelta(days=1)  
40.    count=0 
41.    while bd!=ed:  
42.        ed=ed-oneday  
43.        count+=1 
44.    return count  
45. 
46.#获取两个时间段的所有时间,返回list  
47.def getDays(beginDate,endDate):  
48.    format="%Y-%m-%d";  
49.    bd=strtodatetime(beginDate,format)  
50.    ed=strtodatetime(endDate,format)  
51.    oneday=datetime.timedelta(days=1)   
52.    num=datediff(beginDate,endDate)+1   
53.    li=[]  
54.    for i in range(0,num):   
55.        li.append(datetostr(ed))  
56.        ed=ed-oneday  
57.    return li  
58. 
59.#获取当前年份 是一个字符串  
60.def getYear():  
61.    return str(datetime.date.today())[0:4]   
62. 
63.#获取当前月份 是一个字符串  
64.def getMonth():  
65.    return str(datetime.date.today())[5:7]  
66. 
67.#获取当前天 是一个字符串  
68.def getDay():  
69.    return str(datetime.date.today())[8:10]     
70.def getNow():  
71.    return datetime.datetime.now()  
72. 
73.      
74.print getToday()  
75.print getYesterday()  
76.print getDaysByNum(3)  
77.print getDays('2008-10-01','2008-10-05')  
78.print '2008-10-04 00:00:00'[0:10]  
79. 
80.print str(getYear())+getMonth()+getDay()  
81.print getNow() 

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-372919-1-1.html 上篇帖子: python实现快速排序法 下篇帖子: python的datetime时间系统的处理
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表