簡體   English   中英

PyMongo返回浮點數而不是整數

[英]PyMongo returns float instead of integer

我在Mongo中有一個存儲URL的集合,為此,我使用以下字段:

  • 協議(類型:字符串)-例如:https
  • 主機(類型:字符串)-例如:google.com
  • 端口(類型:整數)-例如:80

在mongo客戶中,我執行

db.myCollection.find()

它返回

{"protocol" : "https", "host" : "google.com", "port" : 80}

在帶有PyMongo的Python中,我執行

for service in myCollection.find():
  print service['port']

它返回

80.0

我的數字存儲為整數嗎?

使用PyMongo,如何將其返回為整數而不是浮點數?

文檔

默認情況下,mongo shell將所有數字視為浮點值。 mongo shell提供NumberInt()構造函數以顯式指定32位整數。

我猜值存儲​​為浮點數。

相關: https : //stackoverflow.com/a/30501514/4653485

您可以將其轉換為整數,如下所示:

for service in myCollection.find():
  print int(service['port'])

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM