python中时间处理datetime模块的timedelta用法
作者:我就是个世界
发表于:2012-11-06
当有人问你昨天是几号,是不是很容易就得到答案了,
但是当问你100天前是几号,你是不是又能很容易地得出答案呢?
呵呵,让我们用程序来实现一下吧,datetime的timedeltime就派上用场了。
[code]
import datetime
(datetime.datetime.now() - datetime.timedelta(days = 100)).strftime("%Y-%m-%d")
[/code]
是不是很方便呢?![separator]
[color=#FF0000]timedelta代表两个datetime之间的时间差[/color]
再看下面的例子:
[code]
#! /usr/bin/python
# coding=utf-8
from datetime import datetime,timedelta
"""
timedelta代表两个datetime之间的时间差
"""
now = datetime.now()
past = past = datetime(2010,11,12,13,14,15,16)
timespan = now - past
#这会得到一个负数
past - now
attrs = [
("days","日"),( 'seconds',"秒"),( 'microseconds',"毫秒")
#('min',"最小"),( 'max',"最大"),
]
for k,v in attrs:
"timespan.%s = %s #%s" % (k,getattr(timespan, k),v)
"""
总共相差的秒数
"""
timespan.total_seconds()
"""
实例化一个timespan
请注意它的参数顺序
timedelta([days[, seconds[, microseconds[, milliseconds[, minutes[, hours[, weeks]]]]]]])
"""
timespan = timedelta(days=1)
now - timespan #返回的是datetime型
now + timespan
timespan * 2 #还可以乘哦。代表二倍
timespan / 13
[/code]
但是当问你100天前是几号,你是不是又能很容易地得出答案呢?
呵呵,让我们用程序来实现一下吧,datetime的timedeltime就派上用场了。
[code]
import datetime
(datetime.datetime.now() - datetime.timedelta(days = 100)).strftime("%Y-%m-%d")
[/code]
是不是很方便呢?![separator]
[color=#FF0000]timedelta代表两个datetime之间的时间差[/color]
再看下面的例子:
[code]
#! /usr/bin/python
# coding=utf-8
from datetime import datetime,timedelta
"""
timedelta代表两个datetime之间的时间差
"""
now = datetime.now()
past = past = datetime(2010,11,12,13,14,15,16)
timespan = now - past
#这会得到一个负数
past - now
attrs = [
("days","日"),( 'seconds',"秒"),( 'microseconds',"毫秒")
#('min',"最小"),( 'max',"最大"),
]
for k,v in attrs:
"timespan.%s = %s #%s" % (k,getattr(timespan, k),v)
"""
总共相差的秒数
"""
timespan.total_seconds()
"""
实例化一个timespan
请注意它的参数顺序
timedelta([days[, seconds[, microseconds[, milliseconds[, minutes[, hours[, weeks]]]]]]])
"""
timespan = timedelta(days=1)
now - timespan #返回的是datetime型
now + timespan
timespan * 2 #还可以乘哦。代表二倍
timespan / 13
[/code]
请发表您的评论