Lad os gennemgå fejlene:
-
Den første fejl vises simpelthen fordi du har brug for et faktisk BSON-objekt. Bemærk, at du aldrig har kodet nogen data - opretter
bson.binary.Binary
objekt betyder ikke at kaldeBSON.encode()
. -
Og det er her PyMongo snyder dig lidt.
bson.binary.Binary
er en runtime-patchetstr
ellerbytes
forekomst (se kilde ). Det er derfor, du får den anden fejl:det, du kalder, er faktiskstr.decode()
, ikkeBSON.decode()
. Sågotfield
indeholder de tilfældige float-data, som du oprindeligt har gemt, men selve objektet har nogle forskellige metoder (f.eks.repr()
) bundet til det.