FILE = 'file.txt'
result = {}
with open(FILE, encoding='utf-8') as my_file:
for line in my_file:
line = line.strip().split('/')
result[line[0]] = line[1:]
print(result['Ali'][1])
def data_to_dict(file_path):
"""
Some docstring here which tells the user what the function does
"""
result = {}
with open(file_path, encoding='utf-8') as my_file:
for i, line in enumerate(my_file):
line = line.strip().split('/')
key, val = line[0], line[1:]
if key not in result:
result[key] = val
else:
new_key = '{}_{}'.format(key, i)
result[new_key] = val
return result
if __name__ == '__main__':
d = data_to_dict('file.txt')
print(d)
print(d['Ali'][1])
一种方法是:
或者,巧妙地放在函数中:
^{pr2}$我在上面做的是:
\n
)/
字符后的字符串来创建一个列表(此时,一行如下:['Ali', '22', 'Bankacı']
)!如果两个(或多个)列表中的第一个元素相同(您将始终获得最后一个元素的值),则无法获得正确的结果
如果您还想解决重复密钥问题,另一种方法可能如下所示:
对于此文件:
输出如下所示:
通常情况下,我不会不加尝试地回答问题,但这可以用一行
dictionary-comprehension
轻松完成:然后允许以以下格式访问:
^{pr2}$或者,您可以使用另一个
comprehension
创建2d list
:它给出了:
相关问题 更多 >
编程相关推荐