给定一个字典,其中值可能是不同的类型,如何将python字典简洁地转换为元组列表?

约翰

重要提示:如果value是列表,那么我要为此列表中的每个项目获取多个key, value元组key字典中的值将具有多种类型,至少包括字符串,整数和列表。

我在下面有一个解决方案,但是我想知道是否有更简洁的方法可以做到这一点。

# Sample data
d = {'key1': 'string1', 
    'key2': 15, 
    'key3': ['item1', 'item2', 'item3', 'item4']}

# This code does what I want
parameters = []
for k, v in d.iteritems():
    if isinstance(v, str):
        parameters.append((k ,v))
    elif isinstance(v, int):
        parameters.append((k, v))
    elif isinstance(v, list):
        for x,y in zip(itertools.repeat(k), v):
            parameters.append((x, y))
    else:
        continue

parameters
# [('key1', 'string1'),
#  ('key2', 15),
#  ('key3', 'item1'),
#  ('key3', 'item2'),
#  ('key3', 'item3'),
#  ('key3', 'item4')]
AKS

这是列表理解的简短版本:

>>> d = {'key1': 'string1', 'key2': 15, 'key3': ['item1', 'item2', 'item3', 'item4']}
>>> parameters = [(k, v1) for k, v in d.iteritems() for v1 in (v if isinstance(v, list) else [v])]
>>> parameters
[('key3', 'item1'), ('key3', 'item2'), ('key3', 'item3'), ('key3', 'item4'), ('key2', 15), ('key1', 'string1')]

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

给定一个字典,其中值可能是不同的类型,如何将python字典简洁地转换为元组列表?

来自分类Dev

Python将字典列表转换为另一个字典列表

来自分类Dev

Python将字典列表转换为另一个字典列表

来自分类Dev

如何将Python中的数据列表转换为字典,其中每个项目都有一个键

来自分类Dev

将元组列表转换为字典,给每个元组一个不同的键

来自分类Dev

我如何在f#中创建一个字典,其中值是“通用”

来自分类Dev

如何将字典映射到另一个字典Python

来自分类Dev

Python:如何将元组列表转换为字典键?

来自分类Dev

如何将3个列表压缩到python中的一个字典中?

来自分类Dev

Python 2.7.12:如何将两个列表组合成一个字典

来自分类Dev

将两个列表合并为一个字典,其中每个键可能包含多个值

来自分类Dev

如何将字典中的键与列表中的元素进行匹配,并将这些键值存储到python中的另一个字典中?

来自分类Dev

如何将字典值映射到另一个字典

来自分类Dev

将包含列表的字典追加到python中的另一个字典

来自分类Dev

如何在Python中将一个元素列表完美地转换为元组?

来自分类Dev

如何从一个字典向另一个不同类型的字典添加条目?

来自分类Dev

如何将字典的内容复制到另一个字典以在之后清除原始字典

来自分类Dev

如何将一个字符串完整地转换为二进制?

来自分类Dev

如何将两个或多个Counters合并为一个字典?

来自分类Dev

使用一个字典对列表的不同元素求和(Python)

来自分类Dev

将字典的值列表替换为另一个字典中的对应键值映射

来自分类Dev

如何将python字典中的数组转换为元组?

来自分类Dev

如何将 Python 多级字典转换为元组?

来自分类Dev

将两个列表合并成一个字典Python

来自分类Dev

如何将映射的数据转换为字典,其中每个XY坐标都包含一个光谱?

来自分类Dev

试图输出一个字典,其中包含给定文本的所有单词

来自分类常见问题

如何将一个字典添加到数据框列?

来自分类Dev

如何将JSON API数据捆绑到一个字典中?

来自分类Dev

如何将字典转换为没有dict函数的元组列表?[PYTHON]

Related 相关文章

  1. 1

    给定一个字典,其中值可能是不同的类型,如何将python字典简洁地转换为元组列表?

  2. 2

    Python将字典列表转换为另一个字典列表

  3. 3

    Python将字典列表转换为另一个字典列表

  4. 4

    如何将Python中的数据列表转换为字典,其中每个项目都有一个键

  5. 5

    将元组列表转换为字典,给每个元组一个不同的键

  6. 6

    我如何在f#中创建一个字典,其中值是“通用”

  7. 7

    如何将字典映射到另一个字典Python

  8. 8

    Python:如何将元组列表转换为字典键?

  9. 9

    如何将3个列表压缩到python中的一个字典中?

  10. 10

    Python 2.7.12:如何将两个列表组合成一个字典

  11. 11

    将两个列表合并为一个字典,其中每个键可能包含多个值

  12. 12

    如何将字典中的键与列表中的元素进行匹配,并将这些键值存储到python中的另一个字典中?

  13. 13

    如何将字典值映射到另一个字典

  14. 14

    将包含列表的字典追加到python中的另一个字典

  15. 15

    如何在Python中将一个元素列表完美地转换为元组?

  16. 16

    如何从一个字典向另一个不同类型的字典添加条目?

  17. 17

    如何将字典的内容复制到另一个字典以在之后清除原始字典

  18. 18

    如何将一个字符串完整地转换为二进制?

  19. 19

    如何将两个或多个Counters合并为一个字典?

  20. 20

    使用一个字典对列表的不同元素求和(Python)

  21. 21

    将字典的值列表替换为另一个字典中的对应键值映射

  22. 22

    如何将python字典中的数组转换为元组?

  23. 23

    如何将 Python 多级字典转换为元组?

  24. 24

    将两个列表合并成一个字典Python

  25. 25

    如何将映射的数据转换为字典,其中每个XY坐标都包含一个光谱?

  26. 26

    试图输出一个字典,其中包含给定文本的所有单词

  27. 27

    如何将一个字典添加到数据框列?

  28. 28

    如何将JSON API数据捆绑到一个字典中?

  29. 29

    如何将字典转换为没有dict函数的元组列表?[PYTHON]

热门标签

归档