PyMongo返回浮点数而不是整数

3

我有一个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,我如何将其作为整数而不是浮点数返回?

2个回答

5

0

你可以像这样将它转换为整数:

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

谢谢@Muatik。它不应该已经是整数吗?似乎很奇怪,我在数据库中存储一个整数,它返回为十进制数,我需要将其转换回int。 - Felipe Plets
1
也许在插入时值的类型是浮点型?因为Mongo会返回整数或浮点数。尝试在插入阶段将其转换为整数,看看会发生什么。 - Muatik

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接