【发布时间】:2013-06-11 09:12:58
【问题描述】:
我有一个脚本,它以 2013 年 3 月 4 日的形式获取字符串。如何将其转换为可以用来确定日期年龄(以月为单位)的日期?我还希望能够将月份设为十进制形式(即 2.8 个月大)。
就编码而言,我完全不确定该怎么做。我读过不同的库可以做这样的事情,但我不确定哪个是最好的。
编辑:假设一个月有 30 天。这是我目前所拥有的:
import time
def ageinmonths( str )
return time.today() - time.strptime("3/4/2013", "%b %d %y")
【问题讨论】:
-
到目前为止你尝试过什么?
datetime模块是一个很好的起点。 -
你如何定义一个月? 30 天还是按日历?如果某人在闰年的 2 月 28 日出生,他们会在两天后出生 0.0667 (1/29 + 1/31) 个月吗?
-
这在很大程度上取决于您如何计算“1 个月”。 1个月=30天?是日历翻页的时候吗?
-
我建议你使用 idle 或其他 Python shell 并输入诸如
time.today()和time.strptime("3/4/2013", "%b %d %y")之类的表达式并与它们一起玩,看看会发生什么。然后import datetime并做dir(datetime)