python - 两个列表的条件压缩

标签 python dictionary

我正在尝试将两个列表压缩在一起以创建一个新字典。列表一是以字符串表示的列名列表,而列表二是变量列表。

如果变量为空(无),我不想要它或相应的列数据(它们共享相同的索引,因此“foo”列位于索引 0,“foo”变量也是如此)在我的字典。

我已经尝试了几种使用字典理解来构建它的方法,但未能正确创建它。

我的字典需要排序,所以我也在使用 OrderedDict 模块。

这有可能吗?

编辑:

数据应该是这样的。

list_1 = ['foo', 'bar', 'baz', 'whatever']
list_2 = [foo, bar, baz, whatever]

现在假设 whatever 变量为 None。

我创建的字典应该看起来像

d = { 
'foo' : foo,
'bar' : bar,
'baz' : baz
}

最佳答案

正如 Martijn 在评论中指出的,您只需要 OrderedDict((k, v) for k, v in zip(list_1, list_2) if v is not None)

关于python - 两个列表的条件压缩,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30924731/

相关文章:

python - 按数据组从文件中改组文本

python - 如何将 JSON 列表转换为 CSV 文件中的两个不同列?

python - 将文本转换为向量

python - 如何使用字典为单个键赋予多个值?

javascript - 用重音排序西里尔文字

python - 将看门狗与 Tkinter 一起使用

python - 如何定义一个给定测试子目录中的所有测试使用的 pytest 固定装置?

java - 如何更改HashMap中键的值?

c++ - 用 C++ 设计 map

python - 如何创建一个 python 字典来存储多个帐户的用户名和密码