您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何在python中将函数应用于列表的每个子列表?

如何在python中将函数应用于列表的每个子列表?

您可以使用内置函数map来执行此操作。

因此,如果您要应用的函数len,则可以执行以下操作:

>>> list_of_lists = [['how to apply'],['a function'],['to each list?']]
>>> map(len, list_of_lists)
[1, 1, 1]

在中python3,上面返回了一个地图迭代器,因此您需要一个显式list调用

>>> map(len, list_of_lists)
<map object at 0x7f1faf5da208>
>>> list(map(len, list_of_lists))
[1, 1, 1]

如果您要为此编写一些必须在Python2和python3中都兼容的代码,则列表推导方法是可行的。就像是:

[apply_function(item) for item in list_of_lists]

无需任何更改即可在Python 2和3中使用。

但是,如果您输入的list_of_lists很大,则mappython3中使用将更有意义,因为迭代器会更快。

python 2022/1/1 18:39:51 有456人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶