https://docs.python.org/3/library/datetime.html#timedelta-objects
class datetime.timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, weeks=0)
timedelta对象
基本介绍
class datetime.timedelta(days=0, seconds=0, microseconds=0, milliseconds=0, minutes=0, hours=0, weeks=0)
内部只存储days、seconds 和 microseconds 。 所有的参数都将转换成这三个单位:
- 1毫秒转换为1000微秒。
- 1分钟转换为60秒。
- 1小时转换为3600秒。
- 1周被转换为7天。
类属性
类型 | 说明 |
---|
timedelta.min | 最小的timedelta对象,timedelta(-999999999) |
timedelta.max | 最大的timedelta对象,timedelta(days=999999999, hours=23, minutes=59, seconds=59, microseconds=999999) |
timedelta.resolution | 不相等的timedelta对象之间的最小可能差值,timedelta(microseconds=1) |
实例属性
属性 | 值 |
---|
days | 返回天数, 介于-999999999和999999999之间(包括-999999999和999999999) |
seconds | 返回秒数 介于0和86399之间(包括0和86399) |
microseconds | 返回微秒数 介于0和999999之间(包括0和999999) |
from datetime import timedelta
delta = timedelta(
days=50,
seconds=27,
microseconds=10,
milliseconds=29000,
minutes=5,
hours=8,
weeks=2
)
delta
datetime.timedelta(days=64, seconds=29156, microseconds=10)
实例方法
方法 | 值 |
---|
timedelta.total_seconds() | 返回时间差中包含的总的秒数。等同于td / timedelta(seconds=1) |
可用操作
操作 | 结果 |
---|
t1 = t2 + t3 | t2和t3的和。之后,t1-t2 == t3 and t1-t3 == t2为真。(1) |
t1 = t2 - t3 | t2和t3的差。之后t1 == t2 - t3 and t2 == t1 + t3为真。(1) |
t1 = t2 * i 或 t1 = i * t2 | Delta乘以一个整数。之后,如果i != 0,则t1 // i == t2为真。 |
通常,t1 * i == t1 * (i-1) + t1为真。(1) | |
t1 = t2 * f 或 t1 = f * t2 | Delta乘以一个浮点数。结果使用round-half-to-even舍入到timedelta.resolution最近的倍数。 |
f = t2 / t3 | t2除以t3(3)。返回一个float对象。 |
t1 = t2 / f 或 t1 = t2 / i | Delta除以一个浮点数或整数。结果使用round-half-to-even舍入到timedelta.resolution最近的倍数。 |
t1 = t2 // i或t1 = t2 // t3 | 计算商,余数(如果有的话)被丢弃。在第二种情况下,返回一个整数。(3) |
t1 = t2 % t3 | 计算余数,为一个timedelta对象。(3) |
q, r = divmod(t1, t2) t0> | 计算商和余数:q = t1 // t2 (3)且r = t1 % t2。q一个是整数,r是一个timedelta对象。 |
0 | 返回具有相同值的timedelta对象。(2) |
0 | 等效于timedelta(-t1.days, -t1.seconds, -t1.microseconds),和t1* -1。(1)(4) |
abs(t) | 当t.days >= 0时等效于+t,当t.days < 0时等效于-t。(2) |
str(t) | 以[D day[s], ][H]H:MM:SS[.UUUUUU]形式返回一个字符串,其中对于负tD为负数。(5) |
repr(t) | 以datetime.timedelta(D[, S[, U]])形式返回一个字符串,其中对于负tD为负数。(5) |