用Python从文件中读取字典

2024-06-16 10:34:31 发布

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

我有一个巨大的储物柜库,分配给一个文件中有这种结构的人:

'paul':'locker.01'
'robert':'locker.02'
'julia':'locker.03'
'rosalind':'locker.04'

我需要创建一个脚本,将此文件作为字典读取,如下所示:

{'paul':locker.01
'robert':locker.02
'julia':locker.03
'rosalind':locker.04}

到目前为止,我已经创建了这个脚本,但我卡住了。以前有人做过吗?你知道吗

f = open('C:/file.txt', 'r')
for i in f.readlines():
    i = i[0:-1]    
    print(i)

Tags: 文件intxt脚本for字典open结构
1条回答
网友
1楼 · 发布于 2024-06-16 10:34:31

只要做:

result = {}
with open('thefile.txt') as my_file:
    for line in my_file:
        name, locker_number = line.replace("'", "").split(':')
        result[name] = locker_number
print(result)

请注意,这样做可能不是一个好方法。如果有两个彼得,三个朱利亚呢?你知道吗

所以也许这对你更好:

result = {}
with open('thefile.txt') as my_file:
    for line in my_file:
        name, locker_number = line.replace("'", "").split(':')
        if not name in result:
            result[name] = [locker_number]
        else:
            result[name].append(locker_number)

print(result)

for name in result:
    result[name] = ', '.join(result[name])  # will return a string of comma separated lockers.

print(result)

这将创建一个分配给该名称的储物柜编号列表。你知道吗

相关问题 更多 >