Python 的 ** 运算符有何结合律?
来自 Python 文档
同一分组中的运算符由左至右(比较运算符除外),包括测试,它们具有相同的优先级,并从左至右连锁 - 请参见比较部分 - 以及从右至左分组的指数运算。
因此,** 运算符(指数运算)是从右至左结合的。例如,
2 ** 3 ** 4 will be evaluated as: (2 ** (3 ** 4))
例如,
print(2 ** 3 ** 0)
这会输出
2
广告
来自 Python 文档
同一分组中的运算符由左至右(比较运算符除外),包括测试,它们具有相同的优先级,并从左至右连锁 - 请参见比较部分 - 以及从右至左分组的指数运算。
因此,** 运算符(指数运算)是从右至左结合的。例如,
2 ** 3 ** 4 will be evaluated as: (2 ** (3 ** 4))
例如,
print(2 ** 3 ** 0)
这会输出
2