python - 有没有办法让 lambda 使用 if 条件调用定义?
问题描述
我正在做一个优化问题,我正在尝试使用 lambda 和 def 定义一个约束。
基本上我想做的是:
lambda x: add_2 if no_added == 2
add_2 是我要调用的定义:
def add_2(x):
lc2 = x[36]-0.02
return lc2
什么是正确的语法?
解决方案
只需调用该函数并创建一个默认else
块:
lambda x: add_2(x) if no_added == 2 else None
如果 None 不适合您,则返回其他值。无论如何,您可以在函数内部处理这个问题:
def add_2(x, no_added):
if no_added == 2:
return x[36]-0.02
return None
推荐阅读
- r - 循环遍历向量只更新第一项
- python - 如何修复此正则表达式以匹配 Json 中的对象并将其替换为对象列表
- angular - 错误类型错误:“_co.category.category_type 未定义”
- excel - 如何在工作表代码的范围内查找值
- sql - SQL 检索具有特殊字符的字符串
- javascript - 如何解析 moment.js 日期对象
- vb.net - 如何将数据从并行数组传输到文本框?
- swift - 如何在有顺序的循环中使用 DispatchGroup?
- javascript - 如何使用 Javascript DOM 收集选定的下拉文本?
- r - 在 R 中重新编码多个日期值的有效方法