作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个列表和一个函数:
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/
我是一名优秀的程序员,十分优秀!