我有一个从外部来源获得的数字,我想将其作为 Int 写入 mongo
问题是该数字高于有符号的 Int64 (这就是 mongo 实现它的方式) - 但仍然适合无符号的 int64
号码是: 9223372036854776000
我怎样才能将其写入mongo? 我越来越
OverflowError: MongoDB can only handle up to 8-byte ints
使用最新的 PyMongo 和 MongoDB 3.4 或更高版本,您可以将标准 Python Decimal 与新的 BSON Decimal128 类型一起使用。
from decimal import Decimal
from bson.decimal128 import Decimal128
from pymongo import MongoClient
d = Decimal128(Decimal(9223372036854776000))
collection = MongoClient().test.test
collection.insert_one({'myNumber': d})