繁体   English   中英

将列表转换成字典python3

[英]Converting a list into a dictionary python3

我有一个列表['E:3', 'B:13', 'G:6', 'F:|=', 'H:}{', 'I:!', 'B:|3', 'K:|{', ''] ,我想将其转换为字典{'E':'3', 'B':'13', 'G':'6', 'F':'|=', 'H':'}{', 'I':'!', 'B':'|3', 'K':'|{'}

我将如何做到这一点?

只需在:上拆分它,然后将其发送到dict() ,即可过滤出空字符串:

>>> l = ['E:3', 'B:13', 'G:6', 'F:|=', 'H:}{', 'I:!', 'B:|3', 'K:|{', '']
>>> result = dict(item.split(':') for item in l if item)
>>> result
{'I': '!', 'H': '}{', 'K': '|{', 'E': '3', 'G': '6', 'B': '|3', 'F': '|='}

还要注意,正如Psidom 在评论中所说,词典不能包含重复的键,因此只有最近的重复才能最终出现在结果中。

您可以通过dict理解来做到这一点。 这将遍历列表,将每个项目分为两部分,第一部分用于dict键,第二部分用于值。

example_dict = {x.split(":")[0]: x.split(":")[1] for x in example_list if x}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM