Python 日期时间处理笔记

December 20, 2008

昨天写到日期和时间的处理,需要输入日期和时间,存储到GAE的DataStore中。

GAE有三个与日期时间有关的Property:

DateTimeProperty
DateProperty
TimeProperty

这三个Property,其实最终都是以datetime.datetime存储,但是使用的时候又有一点不同。

Python中有很棒的解析字符串到时间对象的方法:time.strptime(string[, format]),这个方法会把字符串按照你想要的格式解析进来,放到一个时间对象中。返回值是一个struct_time。解析了之后还要存到GAE的DataStore对象中去,暂时找到了下面的方法:

tDate = time.strptime(self.request.get(‘getup_date’),’%m/%d/%Y’)
record.recordDate = datetime.date(tDate.tm_year, tDate.tm_mon, tDate.tm_mday)
tGetup = time.strptime(self.request.get(‘getup_at’), ‘%H:%M’)
record.getupAt = datetime.time(tGetup.tm_hour,tGetup.tm_min)
tSleep = time.strptime(self.request.get(‘sleep_at’), ‘%H:%M’)
record.sleepAt = datetime.time(tSleep.tm_hour,tSleep.tm_min)

这样就能把12/20/2008这样的日期,以及07:30这样的时间存成想要的对象了。注意如果直接把解析的结果赋给TimeProperty和DateProperty的话会出错。

另外,time.strftime(formart[, t])能够很好的将时间日期对象换成你想要的格式。

posted in Google App Engine, Python by cowoo

Follow comments via the RSS Feed | Leave a comment | Trackback URL

Leave Your Comment

 
Powered by Wordpress and MySQL. Theme by Shlomi Noach, openark.org