【问题标题】:How works modulo in python? [duplicate]python中的模数如何工作? [复制]
【发布时间】:2023-03-25 03:11:01
【问题描述】:

为什么 -4%5 => 1 //I understand -5%5 => 0 //I understand -6%5 => 4 // My mind has been deleted

我在 c/cpp 中检查过,结果只有 -1。

【问题讨论】:

  • 我找不到合适的主题。

标签: python modulo


【解决方案1】:

-6:小于或等于-6且能被5整除的最大数是-10

# just like the other examples
-4 - (-5) == 1  
-5 - (-5) == 0  
-6 - (-10) == 4  # fits perfectly in there
-7 - (-10) == 3  
-8 - (-10) == 2  

【讨论】:

  • 您定义整数地板除法,如 Python 2 所做的那样。
  • @KlausD。是的,我注意到了这一点并恢复到我以前的版本;)
  • 所以它更像是减法,而不是模数。 [(-10) - (-6)] 很奇怪。
  • 这就是模数的工作方式,至少在 Python 中是这样。如果你继续这个系列到正数,你会发现它只是常规的延续。
  • 我找到了解决方案,如果我使用 math.fmod(-6,5) 它可以工作。结果是-1,什么是正确的。
猜你喜欢
  • 1970-01-01
  • 2023-03-18
  • 2016-12-24
  • 2015-08-21
  • 1970-01-01
  • 2021-05-10
  • 1970-01-01
  • 2013-06-23
  • 2020-02-20
相关资源
最近更新 更多