Python:跳过行并拆分为列文本文件

Python:跳过行并拆分为列文本文件,python,numpy,split,txt,Python,Numpy,Split,Txt,我有一个txt文件,看起来像: 说明 说明 0 0 170. 17040.02 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 18.09228 1 0 170. 17070.80 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 12.09736 .. 1 0 170. 17006.48 0.00 0.00 0.00 0.00 0.00 0.00 0

我有一个txt文件,看起来像:


说明
说明
0 0 170. 17040.02 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 18.09228
1 0 170. 17070.80 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 12.09736
..
1 0 170. 17006.48 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 12.09736


我已尝试使用以下方法进行此操作:

data = np.loadtxt('Filename.txt', comments='#', delimiter=' ', skiprows=2)
但我得到错误消息“无法将字符串转换为浮点:”可能会发生,因为在数据中,列之间有不同数量的空格

我也试过:

with open('Filename.txt') as f:  
   data = f.readlines()[2:] 
但是我不知道怎么把它分成几列。 我只需要一个在“description”后面有数字的数组来进行一些计算。
如果有人能提出解决方案,我将不胜感激。

如果文件中的值用空格分隔,您可以执行以下操作:

contents=[]
with open('Filename.txt') as f:
   for line in f.readlines():
     contents.append(line.rstrip().split(' '))
要跳过前两列,请执行以下操作:

contents=[]
with open('Filename.txt') as f:
  for line in f.readlines():
    line=line.rstrip().split(' ')
    if len(line)<2:
      continue
    contents.append(line[2:])
contents=[]
将open('Filename.txt')作为f:
对于f.readlines()中的行:
line=line.rstrip().split(“”)

如果len(line),您能描述一下输出应该是什么样子吗?
[line.split(“”)表示数据中的line]
这会让您更接近您所需要的内容吗。我敢打赌问题在于字符串(170)。这不是一个数字,因此np.load txt可能在这里失败。Samusa posted会将您的文本拆分为列,但您还需要手动修复所有不以数字结尾的数字。i、 e 170.->170.0预期的输出/行为是什么?我只想要一个由这些数字组成的数组。