首页 > 解决方案 > 如何在 lambda 中为 python3 赋值?

问题描述

我的项目使用 python3.5 和 Ubuntu 16.04。

我在我的 python 代码中使用了两个主要的东西。一个是map,另一个是lambda
我的代码是:

tables=map(lambda(p,_) : {"geometry" : p, "properties" : {}},shapes)  (in python2)  

传递给 lambda 的值/变量是 2 部分的元组。我只对第一个感兴趣,因此我使用下划线(_)忽略了第二个,但它也被分配给"properties".

上面的代码在 python2 中,我正在尝试使用 python3 复制相同的东西。截至目前,我已将代码的几部分更改为 python3,例如:

  1. 移除 lambda 后的大括号lambda(a,b) -> lambda a,b
  2. python3 lambda中元组的解包lambda a_b : a_b[0] , a_b[1]

现在我的主要问题是如何在 lambda 中为 python3 执行赋值操作?{"geometry" : p, "properties" : {}

我已经研究了很长一段时间,并观察到大多数答案/问题都与对象或 python3.8 有关,我没有使用这些。

我不知道是否有任何方法可以做到这一点,但如果有的话,请分享所有选项。

标签: python-3.xlambdaubuntu-16.04

解决方案


推荐阅读