Python3导入带有浮点数和混合内容的文本文件

Python3导入带有浮点数和混合内容的文本文件,python,numpy,Python,Numpy,我有一段代码输入: LOEWDIN ATOMIC CHARGES ---------------------- 0 C : -0.780631 1 H : 0.114577 2 Br: 0.309802 3 Cl: 0.357316 4 F : -0.001065 这是代码: import numpy as np name = input("Enter Molecule ID: ") name_in = name+'.lac.dat

我有一段代码输入:

LOEWDIN ATOMIC CHARGES
----------------------
   0 C :   -0.780631
   1 H :    0.114577
   2 Br:    0.309802
   3 Cl:    0.357316
   4 F :   -0.001065
这是代码:

import numpy as np


name = input("Enter Molecule ID: ")

name_in = name+'.lac.dat'
print(name_in)

atm_chg = []

with open(name_in) as f:
    # skip two lines
    f.readline()
    f.readline()
    for line in f.readlines():
        if line.strip(): # is the line non-empty, ignoring white space
            atm_chg.append(float( line.split()[-1] ))

np.savetxt('atm_chg',atm_chg,delimiter=',')
上述结果产生:

-7.806309999999999638e-01
1.145769999999999983e-01
3.098020000000000218e-01
3.573160000000000225e-01
-1.064999999999999974e-03
我想对这个文本文件做同样的事情:

                      * MAYER POPULATION ANALYSIS *
                      *****************************

  NA   - Mulliken gross atomic population
  ZA   - Total nuclear charge
  QA   - Mulliken gross atomic charge
  VA   - Mayer's total valence
  BVA  - Mayer's bonded valence
  FA   - Mayer's free valence

  ATOM       NA         ZA         QA         VA         BVA        FA
  0 C      5.8816     6.0000     0.1184     4.2631     4.2631     0.0000
  1 H      0.8495     1.0000     0.1505     0.9510     0.9510     0.0000
  2 Br    35.0064    35.0000    -0.0064     1.2192     1.2192    -0.0000
  3 Cl    17.0401    17.0000    -0.0401     1.2405     1.2405    -0.0000
  4 F      9.2225     9.0000    -0.2225     1.0449     1.0449    -0.0000
到目前为止,我尝试过的一切都失败了,我真的不知道下一步该怎么做


如果你能给我一个正确的方向,我将不胜感激。

读这句话。分道扬镳。现在已经有了一个浮点数组(在行号和原子符号之后)
np。genfromtxt
可以将该文件读入数组。您需要跳过标题行。如果只想加载浮动列,请选择列。否则,请准备加载包含字符串和浮点数的字段的结构化数组<如果只使用浮点数,代码>保存TXT会更简单。非常感谢。np.genfromtxt成功了!