1 python parsing dictionary split
我只是一个初学python用户,所以我很抱歉这是一个相当简单的问题.我有一个文件,其中包含两个由选项卡分隔的列表.我想将它存储在字典中,因此每个条目都与选项卡后面的相应条目相关联,这样:
cat hat
mouse bowl
rat nose
monkey uniform
dog whiskers
elephant dance
Run Code Online (Sandbox Code Playgroud)
将分为
{'cat'; 'hat', 'mouse' ; 'bowl') etc. etc.
Run Code Online (Sandbox Code Playgroud)
这是一个很长的清单.
这是我试过的:
enhancerTAD = open('TAD_to_enhancer.map', 'r')
list = enhancerTAD.split()
for entry in list:
key, val = entry.split('\t')
ET[key] = val
print ET
Run Code Online (Sandbox Code Playgroud)
这是我最近的尝试,以及我在下面的错误消息:
enhancerTAD = open('TAD_to_enhancer.map', 'r').read()
ET = {}
lst = enhancerTAD.split("\n")
for entry in lst:
key, val = entry.strip().split(' ',1)
ET[key] = val
enhancergene = open('enhancer_to_gene_map.txt', 'r').read()
GE = {}
lst1 = enhancergene.split("\n")
for entry in lst1:
key, val = entry.strip().split(' ',1)
GE[key] = val
geneTAD = open('TAD_to_gene_map.txt', 'r').read()
GT = {}
lst2 = geneTAD.split("\n")
for entry in lst2:
key, val = entry.strip().split(' ',1)
GT[key] = val
Run Code Online (Sandbox Code Playgroud)
文件"enhancertadmaybe.py",第13行,在key中,val = entry.strip().split('',1)ValueError:需要多于1个值才能解压缩
你可以试试:
with open('foo.txt', 'r') as f:
print dict(line.strip().split('\t', 1) for line in f)
Run Code Online (Sandbox Code Playgroud)
结果:
{'monkey': 'uniform', 'dog': 'whiskers', 'cat': 'hat', 'rat': 'nose', 'elephant': 'dance', 'mouse': 'bowl'}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
98 次 |
| 最近记录: |