Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 我试着用math.pow求2个数的幂和模((x**y)%z),它给出了一个错误_Python_Python 3.x - Fatal编程技术网

Python 我试着用math.pow求2个数的幂和模((x**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,这个表达式应该是

我有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,这个表达式应该是

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和数学感到困惑。