Python函数内部的Pow

Python函数内部的Pow,python,python-3.x,math,pow,Python,Python 3.x,Math,Pow,我知道我可以使用num**pow作为替代方案,但为了将来,我想了解以下代码不起作用的原因: def math(num, pow): return pow(int(num), int(pow)) # the return keyword returns the result pass print(math(2, 4)) 您正在重新定义符号的名称。 函数中的pow是作为参数传递的变量,而不是函数 那么math是一个模块的名称,你不应该重新定义它;以另一种方式调用函数您正

我知道我可以使用num**pow作为替代方案,但为了将来,我想了解以下代码不起作用的原因:

def math(num, pow):
    return pow(int(num), int(pow))
    # the return keyword returns the result
    pass


print(math(2, 4))

您正在重新定义符号的名称。
函数中的
pow
是作为参数传递的变量,而不是函数


那么
math
是一个模块的名称,你不应该重新定义它;以另一种方式调用函数

您正在重新定义符号的名称。
函数中的
pow
是作为参数传递的变量,而不是函数


那么
math
是一个模块的名称,你不应该重新定义它;以另一种方式调用函数

如果使用局部变量
pow
隐藏内置函数
pow
,则可以看到函数参数为
pow

您可以使用:

__builtin__.pow(int(num), int(pow))

使用局部变量
pow
对内置函数
pow
进行阴影处理,可以看到函数参数
pow

您可以使用:

__builtin__.pow(int(num), int(pow))

为什么变量的命名方式与内置函数的命名方式相同?您编写“不工作”时的确切含义是什么?为什么变量的命名方式与内置函数的命名方式相同?您编写“不工作”时的确切含义是什么?