我有一个数据块,看起来像这样:
>Head1
foo 0 1.10699e-05 2.73049e-05
bar 0.939121 0.0173732 0.0119144
qux 0 2.34787e-05 0.0136463
>Head2
foo 0 0.00118929 0.00136993
bar 0.0610655 0.980495 0.997179
qux 0.060879 0.982591 0.974276
每一块都用空格隔开。 我要做的是将它们转换为嵌套字典,如下所示:
{ 'Head1': {'foo': '0 1.10699e-05 2.73049e-05',
'bar': '0.939121 0.0173732 0.0119144',
'qux': '0 2.34787e-05 0.0136463'},
'Head2': {'foo': '0 0.00118929 0.00136993',
'bar': '0.0610655 0.980495 0.997179',
'qux': '0.060879 0.982591 0.974276'}
}
用Python怎么做? 我不知道该怎么办:
def parse():
caprout="tmp.txt"
with open(caprout, 'r') as file:
datalines = (ln.strip() for ln in file)
for line in datalines:
if line.startswith(">Head"):
print line
elif not line.strip():
print line
else:
print line
return
def main()
parse()
return
if __name__ == '__main__'
parse()
文件:
脚本:
执行:
这是我能想到的最简单的解决方案:
相关问题 更多 >
编程相关推荐