从文本文件创建字典
Creating dictionaries from a text file
我有一个文本文件,上面写着:
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个,是否可以让它仍然有效?
以下内容将处理在文件的每一行的名称后跟一个或多个逗号分隔数字的行:
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)}
我有一个文本文件,上面写着:
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个,是否可以让它仍然有效?
以下内容将处理在文件的每一行的名称后跟一个或多个逗号分隔数字的行:
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)}