在python中,我想从带有两个“列”的文本文件中创建字典。第一列包含名称,有时用空格分隔。第二列包含浮点数。两列都位于数据文件的中心(为什么?)。我不知道如何用Python处理这些空格。我正在寻找可用于迭代这些文件中许多的解决方案。
我在文本文件中看到的是:
value err 0.123 value 3.000
csv reader的输出如下所示:
with open('text.data') as f:
reader = csv.reader(f, delimiter=' ')
for row in reader:
print(row)
[]
['','','','','','','','','','','','','','','','',' ',',',',',',',',',',',',',',',',' ','','','','0.123']
['','','','','','','','','','','','','','','','',' ','','','','','','','','','','','','','','','','', ”,“,”,“值”,“,”,“ 3.00”]
我希望它看起来像什么:
['value_err',0.123]
['值',3.00]
由于只有两列,第二列不应包含任何内部空格,因此应该可以:
with open('text.data') as f:
for line in f:
line = line.split()
print(['_'.join(line[:-1]), float(line[-1])])
有很多事情可能会破坏这一点(其他列,多个内部空格,空白行等),但是由于缺少文件格式的更完整定义,我们不得不做出一些猜测。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句