Python 我试着用math.pow求2个数的幂和模((x**y)%z),它给出了一个错误
我有3个变量,我想找到x**y%z。我已经导入了数学库并调用了math.powx,y,z,但它仍然给了我错误 误差结果Python 我试着用math.pow求2个数的幂和模((x**y)%z),它给出了一个错误,python,python-3.x,Python,Python 3.x,我有3个变量,我想找到x**y%z。我已经导入了数学库并调用了math.powx,y,z,但它仍然给了我错误 误差结果 Traceback (most recent call last): File "<pyshell#14>", line 1, in <module> math.pow(x,y,z) TypeError: pow expected 2 arguments, got 3 我使用的是Python3.9.1,这个表达式应该是
Traceback (most recent call last):
File "<pyshell#14>", line 1, in <module>
math.pow(x,y,z)
TypeError: pow expected 2 arguments, got 3
我使用的是Python3.9.1,这个表达式应该是
math.pow(x, y) % z
正如错误正确地告诉您的那样,math.pow只接受两个参数来实现x**y。然后你可以用它的结果来计算模数。这个表达式是
math.pow(x, y) % z
正如错误正确地告诉您的那样,math.pow只接受两个参数来实现x**y。然后你可以用它的结果来取模。Pow只能用于x乘以y的幂。powx,y,所以传递3个参数对pyhton来说没有实际意义 相反,你应该做的只是:
answer = (x ** y) % z
因为python支持**的幂,支持%的模
如果出于某种奇怪的原因,您确实想使用math.pow,那么应该像这样将z参数从中去掉:
answer = math.pow(x, y) % z
Pow只能用于x乘以y math.powx,y的幂,因此传递3个参数对pyhton实际上没有意义 相反,你应该做的只是:
answer = (x ** y) % z
因为python支持**的幂,支持%的模
如果出于某种奇怪的原因,您确实想使用math.pow,那么应该像这样将z参数从中去掉:
answer = math.pow(x, y) % z
我有3个变量,我想找到x**y%z。我已经导入了数学库并调用了math.powx,y,z,但它仍然给了我错误
您可以使用内置的无需导入任何内容功能来完成此操作,例如:
print(pow(2, 10, 10))
输出:
4
使用3-arged pow比使用**和%更有效。我有3个变量,我想找到x**y%z。我已经导入了数学库并调用了math.powx,y,z,但它仍然给了我错误
您可以使用内置的无需导入任何内容功能来完成此操作,例如:
print(pow(2, 10, 10))
输出:
4
使用3-arged pow可能比使用**然后%更有效。将模应用于数学结果。pow…没有理由不使用内置pow函数,它接受三个参数。@PresidentJamesK.Polk问题是它不接受三个参数arguments@Luke_:是的。math.pow与Oh ok不同,我没想到pow会有一个调制选项将模应用到math的结果中。pow…没有理由不使用内置的pow函数,它接受三个参数。@PresidentJamesK.Polk问题是它不接受三个参数arguments@Luke_:是的。math.pow与Oh ok不一样,我没想到pow会有一个调制选项,你也可以简单地使用**operator@Luke_是的,你可以,我使用了math.pow,因为OP特别要求使用该函数。将3个参数传递给pow比查找power和mod next更快。我对内置pow和math.pow感到困惑。你也可以简单地使用**operator@Luke_是的,你可以,我使用了math.pow,因为OP特别要求使用该函数。将3个参数传递给pow比查找power和mod next更快。我对内置pow和数学感到困惑。