2016-05-17 36 views
-2

我想將文本文件轉換爲Python中的字典。Python中的文本文件字符串字典

文本文件看起來像這樣:

Age  Sex 
------------ 
GT20  M 
LT20  F 

我希望它顯示爲(Age: GT20, LT20) (Sex: M,F)
有沒有辦法在Python做到這一點?

+2

是的,有辦法在Python做到這一點。你有嘗試過什麼嗎?如果是這樣,請顯示您到目前爲止的代碼。 – SiHa

回答

0
import re 

lines=[] 
keys=[] 
values=[] 
with open('data', 'r') as f: 
    lines=list(map(lambda line:line.strip(), f.readlines())) 

d, flag={}, False 
for line in lines: 
    if re.match(r'^-+$', line): 
     flag=True 
     continue 
    if flag: 
     values.append(list(map(lambda x:x.strip(), line.split()))) 
    else: 
     keys=list(map(lambda x:x.strip(), line.split())) 

for i in range(len(keys)): 
    d[keys[i]]=[value[i] for value in values] 
print(d) 

這裏是輸出:

$ cat data 
Age  Sex 
------------ 
GT20  M 
LT20  F 
$ python3 p.py 
{'Sex': ['M', 'F'], 'Age': ['GT20', 'LT20']}