我在 Lambda 表达式的概念上遇到了一些困难,我这里有这段代码:
nav.add_branch(
'containers_pods',
{
'containers_pod':
[
lambda ctx: list_tbl.select_row_by_cells(
{'Name': ctx['pod'].name, 'Provider': ctx['provider'].name}),
{
'containers_pod_edit_tags':
lambda _: pol_btn('Edit Tags'),
}
],
'containers_pod_detail':
[
lambda ctx: list_tbl.click_row_by_cells(
{'Name': ctx['pod'].name, 'Provider': ctx['provider'].name}),
{
'containers_pod_timelines_detail':
lambda _: mon_btn('Timelines'),
'containers_pod_edit_tags_detail':
lambda _: pol_btn('Edit Tags'),
}
]
}
)
有人可以解释一下 Lambda 表达式的用法吗? 此代码的更多内容如下:
谢谢!
最佳答案
Lambda 是匿名函数,你可以在心里替换这个 block
[
lambda ctx: list_tbl.select_row_by_cells(
{'Name': ctx['pod'].name, 'Provider': ctx['provider'].name}),
{
'containers_pod_edit_tags':
lambda _: pol_btn('Edit Tags'),
}
]
与
def function_1(ctx):
return list_tbl.select_row_by_cells(
{'Name': ctx['pod'].name, 'Provider': ctx['provider'].name}
)
def function_2(_):
return pol_btn('Edit Tags')
[
function_1,
{
'containers_pod_edit_tags':
function_2,
}
]
lambda _:
中的下划线 _
是 convention in Python对于您不会使用的变量,“一次性”,因为您可以看到 lambda/函数没有使用参数 _
。
关于python - 请解释一下 Python 中的 Lambda 表达式用法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38218175/