Python如何实现模运算?

sga*_*a62 6 python operators modulo modulus

我对%Python中运算符的时间和空间复杂性感到好奇.此外,Python是否使用按位运算% 2

编辑: 我问的是Python 2.7的实现,以防它与Python 3略有不同

cas*_*evh 12

Python使用Knuth的"计算机编程艺术"中的经典算法D. 运行时间(通常)与两个数字的长度乘积成比例.空间与两个数字的长度之和成比例.

实际除法发生在Objects/longobject.c,请参见x_divrem().有关Python long内部表示的背景知识,请参阅Include/longintrepr.h.

% 2不使用按位运算.检查数字是偶数/奇数的标准习语是& 1.

Python 2和3使用相同的算法.

  • 您介意链接到找到此文档或文档或源代码吗?我很想看看 (2认同)