将列表列表传递给功能

cc6g11

我在列表列表中有值。

我想将整个块发送到转换函数,然后该函数以相同的结构返回所有转换后的值。

my_list = [sensor1...sensor4] = [hum1...hum3] = [value1, value2, value3, value4]

所以几个嵌套列表

def conversion(my_list): dictionaries
    for sensor in my_list:
        for hum in sensor:
            for value in hum:
                map(function, value)

有没有一种方法可以将列表理解为一体?我不确定如何在理解中使用map函数,尤其是当您有多个嵌套迭代时。

map(function, value)

由于您只是在每个值上映射函数,而没有在列表中收集返回值,因此使用列表理解不是一个好主意。可以这样做,但是您将收集没有价值的列表项,其唯一目的是稍后丢弃它们-以便您可以保存几行实际上有更好的目的:清楚地告诉正在发生的事情,而无需处于单一,漫长而复杂的行中。

所以我的建议是保持原样。这样更有意义,并且可以清楚地显示正在发生的事情。

但是,我正在收集这些值。它们都需要转换并保存为与以前相同的结构。

在那种情况下,您仍然不希望列表理解,因为那将意味着您创建了一个新列表(没有真正的原因)。相反,只需更新最内部的列表即可。为此,您需要更改迭代方式:

for sensor in my_list:
    for hum in sensor:
        for i, value in enumerate(hum):
            hum[i] = map(function, value)

这将更新内部列表。

另外,由于value实际上是值列表,因此您也可以使用切片语法替换value列表的内容

for sensor in my_list:
    for hum in sensor:
        for value in hum:
            value[:] = map(function, value)

最后要注意的一点是:如果您使用的是Python 3,请记住,它会map返回一个生成器,因此您需要先使用list(map(function, value))将其转换为列表或使用对该部分进行列表理解[function(v) for v in value]

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何将列表列表传递给函数?

来自分类Dev

将项目列表传递给多处理功能

来自分类Dev

将功能列表传递给要评估的“微基准”

来自分类Dev

如何传递列表列表意味着将List <List <Bitmap >>通过bundle传递给android中的片段

来自分类Dev

如何有效地将数据帧子集划分为多个块以传递给列表列表

来自分类Dev

将bash数组传递给python列表

来自分类Dev

将列表传递给proc tcl

来自分类Dev

将ID列表传递给几个查询

来自分类Dev

将python列表传递给javascript

来自分类Dev

如何将列表传递给并行

来自分类Dev

将文件列表传递给grep

来自分类Dev

通过Python将列表传递给C ++

来自分类Dev

将Python列表传递给Rust函数

来自分类Dev

将数字列表传递给Python脚本

来自分类Dev

将列表传递给Python函数

来自分类Dev

如何将列表传递给函数?

来自分类Dev

使用Colum将列表传递给UDF

来自分类Dev

将列表传递给函数参数?

来自分类Dev

将结构传递给通用链接列表

来自分类Dev

将文件列表传递给grep

来自分类Dev

将元素列表传递给命名元组

来自分类Dev

将枚举数组或列表传递给函数

来自分类Dev

将python列表传递给SQL查询

来自分类Dev

将列表传递给partialview,BeginCollectionItem()

来自分类Dev

将指针传递给列表,函数

来自分类Dev

将角色列表传递给子组件

来自分类Dev

将列表值传递给子进程

来自分类Dev

将列表从 Thymeleaf 传递给 Spring Controller

来自分类Dev

仅将填充列表传递给 for 循环