从文本文件创建词典

2024-10-01 11:33:52 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个文本文件,上面写着:

name,number,number,number
name,number,number,number
...

我想用它编一本字典。我发现了这段代码:

file = open('Results.txt', 'r')
lines = file.read().splitlines()
s = {lines[i]:[float(k) for k in lines[i+1:i+4]] for i in range(0,len(lines),4)}

但是,它仅适用于以下格式的文件:

name
number
number
number
name
number
number
number
...

我怎样才能使它从我的格式工作?另外,如果名字后面的数字少于3个,是否有可能使它仍然有效?你知道吗


Tags: 代码nameintxtnumberforread字典
1条回答
网友
1楼 · 发布于 2024-10-01 11:33:52

以下内容将处理文件每行名称后面带有一个或多个逗号分隔数字的行:

with open('Results.txt') as file:
    s = {items[0]: [float(item) for item in items[1:]]
            for items in (line.split(',') for line in file)}

相关问题 更多 >