Skip to main content
 首页 » 编程设计

Python lambda表达式,使用list中的String作为操作符

2025年05月04日14langtianya

假设我有一个简单的列表 lis = [5, *, 2]

是否可以按照以下方式做一些事情:

print(reduce(lambda x,y,z: float(x) y float(z), lis)) 
10 

我想使用列表中给出的字符串来确定操作数。

请您参考如下方法:

首先,您不能将 * 运算符放在列表中,因为它不是 Python 中的值。相反,您可以使用 operator 包中的 mul 函数:

from operator import mul 

然后,假设您有以下列表:

lst = [5, mul, 2] 

您可以执行以下操作:

a, op, b = lst 
print(op(a,b)) 

应该打印:

10 

.