gpt4 book ai didi

python - Python 中 datetime.datetime 对象的正确 None 或 null 条目是什么?

转载 作者:可可西里 更新时间:2023-11-01 09:20:56 24 4
gpt4 key购买 nike

我正在使用 pymongo 将一些日期加载到 mongodb 中。因为 pymongo 会自动转换为 BSON,所以我正在使用 datetime 的 datetime.strptime 函数将输入字符串(如“12/04/2013”​​)转换为 Date 对象,如下所示:

>>> datetime.datetime.strptime("12/04/2013",'%m/%d/%Y')
datetime.datetime(2013, 12, 4, 0, 0)

这样它们就可以使用标准的 mongo 查询进行搜索。

我的问题是:我还想表示我不知道某个日期是什么日期,相当于 None,所以我可以做 None null -对其进行测试。我意识到我可以通过用于输入 ''None 的 try-catch block 将这个日期放在过去或将来很远的时间,但这是 hacky思考,我宁愿使用适当的 None 类型来表示实际上是 None 的东西。

如何输入无日期时间?

最佳答案

当您搜索 MongoDB 时,null 和缺失值是等价的。

> db.foo.insert({a: null})
> db.foo.insert({})
db.foo.find({a: null}, {_id: 0})
{ "a" : null }
{ }

它与 pymongo 的工作方式相同:

>>> [doc for doc in pymongo.MongoClient().test.foo.find({'a': None}, {'_id': 0})]
[{u'a': None}, {}]

所以None似乎是个不错的选择。它与 Python 语义一致,它与 dict.get 方法的默认行为很好地配合,并在使用 Python 驱动程序时直观地映射到 MongoDB 类型。

关于python - Python 中 datetime.datetime 对象的正确 None 或 null 条目是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20386873/

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