gpt4 book ai didi

python - 如何使用map和filter来实现这个?

转载 作者:行者123 更新时间:2023-11-30 23:26:17 28 4
gpt4 key购买 nike

如何使用 mapfilter 编写语句以获得与此列表理解表达式相同的结果:

[(x,y) for x in range(10) if x%5==0
for y in range(10) if y%5==1]

结果:

[(0, 1), (0, 6), (5, 1), (5, 6)]

我知道这似乎毫无意义,但我真的很好奇

最佳答案

这就是我在没有理解的情况下做到的:

sum(map(lambda x: map(lambda y: (x,y), filter(lambda y: y%5==1,range(10))), filter(lambda x: x%5==0,range(10))),[])

执行:

>>> sum(map(lambda x: map(lambda y: (x,y), filter(lambda y: y%5==1,range(10))), filter(lambda x: x%5==0,range(10))),[])
[(0, 1), (0, 6), (5, 1), (5, 6)]

最后一个(也许)令人讨厌的技巧是使用 sum 来压平列表。我得到了[[(0, 1), (0, 6)], [(5, 1), (5, 6)]]

关于python - 如何使用map和filter来实现这个?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22603422/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com