我使用的是dateutil.relativedelta()
,它在我的age
-元组中有与time_unit
相对应的命名参数,得到相对时间的代码如下所示:
def time_delta(age):
now = datetime.fromtimestamp(int(time.time()))
if age.time_unit == "seconds":
relative_time = now - relativedelta(seconds=int(age.value))
elif age.time_unit == "minutes":
relative_time = now - relativedelta(minutes=int(age.value))
elif age.time_unit == "hours":
relative_time = now - relativedelta(hours=int(age.value))
elif age.time_unit == "days":
relative_time = now - relativedelta(days=int(age.value))
elif age.time_unit == "weeks":
relative_time = now - relativedelta(weeks=int(age.value))
elif age.time_unit == "months":
relative_time = now - relativedelta(months=int(age.value))
elif age.time_unit == "years":
relative_time = now - relativedelta(years=int(age.value))
在Python2.7中,有没有什么方法可以让它成为一个单行线,而不是使用以下代码:
^{pr2}$上面没用。我是坚持使用if/elif
还是有更好的方法可以做?在
(代码没有测试,但可能会起作用)
我知道,我知道。
exec
!!!在这种模式下很安全,伙计们。在编辑:打字错误。}
exec
,而不是{相关问题 更多 >
编程相关推荐