gpt4 book ai didi

python - 如何将函数应用于列表中的列表

转载 作者:行者123 更新时间:2023-11-28 19:31:28 24 4
gpt4 key购买 nike

我有一个列表和一个函数:

t = [3, [1], [2, [1], [1]]]

f = lambda x: x**2

我想要这样的结果:

[9, [1], [4, [1], [1]]]

我尝试使用 map 功能,但它似乎不起作用

执行此操作时出现类型错误:

list(map(f, t))

最佳答案

如果t的元素是另一个列表,需要映射函数,而不是调用函数。如果您希望它处理任意级别的嵌套,f 需要递归。

t = [3, [1], [2, [1], [1]]]

def f(x):
if isinstance(x, list):
return map(f, x)
else:
return x**2

print(map(f, t))

关于python - 如何将函数应用于列表中的列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50162838/

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