从python中的timedelta输出中删除时间

Mid*_*alo 0 python time datetime

我编写了一个小的 python 脚本来确定记录的年龄以及它是否超过一周。我通过从 中减去记录日期来做到这一点now()。该记录将日期2016-02-23 09:01:22作为日期时间返回。

now = datetime.datetime.now()
age = now - recordDate
print age
Run Code Online (Sandbox Code Playgroud)

这将结果打印为 71 days, 23:56:07.156000

有没有比我的 hack 解决方案更“pythonic”的方法来让它只输出几天(而不是几个小时等)

print str(age).split(',',1)[0]
Run Code Online (Sandbox Code Playgroud)

将结果打印为71 days

ale*_*cxe 5

71 days, 23:56:07.156000是一个字符串表示的的timedelta物体

只获取天数,只需获取,好吧,.days

>>> from datetime import datetime
>>> 
>>> recordDate = datetime(year=2010, month=10, day=10)
>>> now = datetime.now()
>>> age = now - recordDate
>>> age  # age is the timedelta object
datetime.timedelta(2033, 61630, 853029)
>>> "%d days" % age.days
'2033 days'
Run Code Online (Sandbox Code Playgroud)