【转】python datetime时间日期处理

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()

posted on 2011-06-03 08:50  xuq  阅读(235)  评论(0编辑  收藏  举报

导航