gpt4 book ai didi

python - 是否有与 C# 的 DateTime.TryParse() 等效的 Python?

转载 作者:IT老高 更新时间:2023-10-28 20:44:55 27 4
gpt4 key购买 nike

在 Python 中是否有与 C# 的 DateTime.TryParse() 等效的方法?

我指的是它避免抛出异常的事实,而不是它猜测格式的事实。

最佳答案

如果你不想要异常,捕获异常。

try:
d = datetime.datetime.strptime(s, "%Y-%m-%d %H:%M:%S")
except ValueError:
d = None

在 Python 的禅宗中,显式优于隐式。 strptime always 返回以指定格式解析的日期时间。这是有道理的,因为你必须定义失败时的行为,也许你真正想要的是。

except ValueError:
d = datetime.datetime.now()

except ValueError:
d = datetime.datetime.fromtimestamp(0)

except ValueError:
raise WebFramework.ServerError(404, "Invalid date")

通过明确说明,下一个阅读它的人会清楚故障转移行为是什么,这就是您需要的。


或者也许您确信日期不会无效;它来自数据库 DATETIME 列,在这种情况下不会捕获异常,因此不要捕获它。

关于python - 是否有与 C# 的 DateTime.TryParse() 等效的 Python?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6615533/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com