Python 二元转一元函数

Python binary to unary function

在这个关于 的帖子之后,我还想处理同一序列中的一元运算符。我使用 lambda 函数去掉了第二个参数,但是在 Python 中是否有特殊用途 tools/libraries?

a, b = 5, 7
for op in [('+', operator.add), ('-', lambda x, y: operator.neg(x))]:
    print("{} {} {} = {}".format(a, op[0], b, op[1](a, b)))

只是将二元运算符和一元运算符的处理分开。

a, b = 5, 7
# binary ops
for op in [('+', operator.add), ('-', operator.sub]:
    print("{} {} {} = {}".format(a, op[0], b, op[1](a, b)))

#unary ops
for op in [('-', operator.neg]:
    print("{} {} = {}".format(op[0], a, op[1](a)))