通过以下方式: -
>>>(9+2j)%(2+1j)
(1-2j)
>>>divmod(9+2j,2+1j)
((4+0j),(1-2j))
它显示商是(4 + 0j),余数是(1-2j),但它是如何计算的?
>>>(9+2j)/(2+1j)
(4-1j)
这样,答案就是(4-1j),因此模数将为0.
模数如何在Python 2.7中使用复数?
答案 0 :(得分:0)
divmod(x, y)
(应该是)等同于(x // y, x % y)
。对于复数,x // y
给出了实部的底线,而不是分别对实部和虚部进行分层。 x % y
等于x - (x // y) * y
,因此以下等式成立:
x = (x // y) * y + (x % y)
请注意,在Python 3中,divmod
不再接受复杂的参数。您可以在官方Python源代码存储库中查看Python 2.7和Python 3.3的源代码。