【问题标题】:Why does floor division return a float instead of an int为什么地板除法返回一个浮点数而不是一个整数
【发布时间】:2020-11-26 16:57:45
【问题描述】:
a = 6
b = 2
c = 9

print(c/b//b)

谁能告诉为什么这个 2.0 而不是 2 的结果? 9/2 = 4.5 4.5//2 应该是 2 bcos 地板除法四舍五入到最接近的整数值。但是为什么结果是2.0呢?

【问题讨论】:

标签: python floor floor-division


【解决方案1】:

地板除法给出四舍五入值。但它不一定给出整数。所以它取决于操作数的类型,因为 4.5 是一个浮点值,因此答案必须是一个浮点数。 这就是为什么 4//2 = 2 和 4.5//2 = 2.0

【讨论】:

  • 2.0 是一个整数。
  • 不是python ;) 它是浮动的。
  • @superbrain 它是一个 float 对象,其值是数学意义上的整数。 float 对象可以表示整数和实数
  • @juanpa.arrivillaga 嗯,它们几乎不能代表任何实数。
猜你喜欢
  • 2016-12-02
  • 2022-11-29
  • 2022-06-15
  • 2014-02-25
  • 1970-01-01
相关资源
最近更新 更多