我问的原因是纯粹的好奇心.我可能会看到,如果你事先不知道你想要应用于某些变量的操作,或者在递归调用的某个级别应用不同的操作,或者它可能只是使某些事情更容易和/或更整洁.
虽然我只是猜测,但这可能是一个非常糟糕的主意,但整体而言只是好奇.
你可以使用operator模块.
该
operator模块导出一组与Python的内部运算符相对应的高效函数.例如,operator.add(x, y)等同于表达式x+y.函数名称是用于特殊类方法的函数名称; 为方便起见,还提供了没有前导和尾随__的变体.
因此,在列表中存储"操作"就像这样简单:
import operator
operations = [operator.add, operator.sub]
# add two numbers
s = operations[0](1, 2)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1360 次 |
| 最近记录: |