簡體   English   中英

讀取文本文件並放入字典中

[英]read text file and put into dictionary

我試圖弄清楚讀取多行的文件,並將第三行拆分為鍵,將第四行拆分為它們的值

file.txt

Ext: aaa bbb ccc ddd eee fff ggg hhh 
tcp: 000 111 222 333 444 555 666 777 
Ext: kkk lll mmm nnn ooo ppp qqq rrr 
tcp: 222 555 444 666 888 958 555 454

和所需的輸出是這樣的:

{
    "kkk" : "222",
    "lll" : "555",
    "mmm" : "444",
    "nnn" : "666",
    "ooo" : "888",
    "ppp" : "958",
    "qqq" : "555",
    "rrr" : "454"
}

你可以試試:

with open('test.txt', 'r') as fp:
    lines = [e.strip() for e in fp.readlines()]
    my_dict = {l3 :l4 for l3, l4 in zip(lines[2].split()[1:], lines[3].split()[1:])}

print(my_dict)

輸出:

{'kkk': '222', 'lll': '555', 'mmm': '444', 'nnn': '666', 'ooo': '888', 'ppp': '958', 'qqq': '555', 'rrr': '454'}

也許有一個更簡單的解決方案,但這就是我會做的

file = open("path_to_your_file.txt", "r")
file.readline()
file.readline()
keys = file.readline().split()[1:]
values = file.readline().split()[1:]
d = dict(zip(keys, values))
file.close()
print(d)

這就是輸出:

{'ooo': '888', 'ppp': '958', 'nnn': '666', 'lll': '555', 'kkk': '222', 'rrr': '454', 'mmm': '444', 'qqq': '555'}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM