如何在python3中将有组织的文件制作成字典?

编程驴

我正在尝试制作此文件:

c;f
b;d
a;c
c;e
d;g
a;b
e;d
f;g
f;d

变成这样的字典:

{'e': {'d'}, 'a': {'b', 'c'}, 'd': {'g'}, 'b': {'d'}, 'c': {'f', 'e'}, 'f': {'g', 'd'}}.

我现在使用的代码如下:

def read_file(file : open) -> {str:{str}}:
f = file.read().rstrip('\n').split()
answer = {}
for line in f:
    k, v = line.split(';')
    answer[k] = v
return answer

但这给了我 {'f': 'g', 'a': 'c', 'b': 'd', 'e': 'd', 'c': 'e', 'd': 'g'}

我该如何解决?

巴尔加夫饶

字典会覆盖上一个键,在此处使用defaultdict

>>> import collections 
>>> answer = collections.defaultdict(set)
>>> for line in f: 
...     k, v = line.split(";")
...     answer[k].add(v)
... 
>>> answer
defaultdict(<class 'set'>, {'b': {'d'}, 'd': {'g'}, 'f': {'d', 'g'}, 'e': {'d'}, 'a': {'c', 'b'}, 'c': {'f', 'e'}})

如果您喜欢传统方法,则可以添加一个if条件

>>> answer = {}
>>> for line in f:
...     k,v = line.split(";")
...     if k in answer:
...         answer[k].add(v)
...     else:
...         answer[k] = {v}
... 
>>> answer
{'b': {'d'}, 'd': {'g'}, 'f': {'d', 'g'}, 'e': {'d'}, 'a': {'c', 'b'}, 'c': {'f', 'e'}}

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何制作有组织的文本文档

如何在Shell脚本循环中调用多个有组织的输入文件

如何在Python3中将数据框转换为字典

如何在“乌龟”上下文中以类似于“ cro”命令的有组织方式制作乌龟脸?

如何在 Python3 中制作条形图?

如何在组织内部的 4 个议程中使用有组织的日程安排 (emacs)

如何在Python3中将多行字符串读取为文件流?

如何在python3中将.wav文件转换为频谱图

如何在python3中对字典元素进行分组

如何从DBPedia获得所有组织?

如何在Python中将元组插入现有字典中

如何在python中制作嵌套字典?

列出有组织的熊猫df的列表的字典

将文件夹中的所有组织文件加载到议程

在PHP中将多维数组转换为有组织的数组

如何在python3中将24位WAV文件转换为16或32位文件

如何在python中的元组内组织字典

将有序字典列表写入 python 中的 1 个单列中的 csv 文件

如何在每个单词后拆分并以有组织的方式获取以下字符串?

具有组织模式文件的Python多行正则表达式

在HaxeFlixel中创建有组织的源文件夹

显示Maxima中3D功能的有组织的俯视图

如何在python中制作字典并将数据保存在文件中

如何将没有分隔符的文本文件拆分为python3中的字典列表?

如何在Python3中从具有特定索引和列的列表的字典创建Pandas DataFrame?

如何在Python3中访问没有多个.get()和nested_lookup的嵌套字典?

如何在python中将有符号转换为无符号整数

如何在Python3中将多个文本文件转换为csv格式?

如何在Python中将存储在文件夹中的多个json文件读入不同的字典中?

TOP 榜单

热门标签

归档