为什么我们需要 python 中的运算符函数?
Why do we need operator functions in python?
为什么要在 python 中使用 operator,而我们几乎所有的内联都可用,例如 [/,*,-,+,<,>,...]?
我们什么时候需要使用这些运算符函数而不是内联运算符?
作为您可能希望能够将运算符作为函数调用的原因的示例,请考虑以下代码:
if op == "+":
return num1 + num2
elif op == "-":
return num1 - num2
elif op == "*":
return num1 * num2
else:
raise ValueError(f"invalid operator {op}")
使用 operator
这可以更容易地写成:
return {
"+": operator.add,
"-": operator.sub,
"*": operator.mul,
}[op](num1, num2)
为什么要在 python 中使用 operator,而我们几乎所有的内联都可用,例如 [/,*,-,+,<,>,...]?
我们什么时候需要使用这些运算符函数而不是内联运算符?
作为您可能希望能够将运算符作为函数调用的原因的示例,请考虑以下代码:
if op == "+":
return num1 + num2
elif op == "-":
return num1 - num2
elif op == "*":
return num1 * num2
else:
raise ValueError(f"invalid operator {op}")
使用 operator
这可以更容易地写成:
return {
"+": operator.add,
"-": operator.sub,
"*": operator.mul,
}[op](num1, num2)