【问题标题】:nested map function of functools subpress one linefunctools的嵌套map函数下压一行
【发布时间】:2018-11-15 14:31:48
【问题描述】:

我想知道嵌套地图功能有什么奇特的方式。

示例代码如下所示

import functools 
y1 = [1,2]
y2 = [3,4]
y3 = [5,6]
alldata = [y1,y2,y3]
result = map(lambda f : map(lambda s : s*10 , f) , alldata)

我想将这部分更改为可读代码

result = map(lambda f : map(lambda s : s*10 , f) , alldata)

【问题讨论】:

  • 列表推导式可能更具可读性,但我认为您当前的代码已经达到了最佳水平。

标签: python list functional-programming


【解决方案1】:

您当前的代码很好,但如果您认为 Python 的匿名函数语法有点繁重,您可以使用列表理解,或者,如果您想保留 map 的惰性,可以使用生成器理解。

y1 = [1,2]
y2 = [3,4]
y3 = [5,6]
alldata = [y1, y2, y3]

result = ((x * 10 for x in data) for data in alldata)

for data in result:
    print(*data)

输出:

10 20
30 40
50 60

【讨论】:

    猜你喜欢
    • 2018-05-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-09-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多