This is a looklike example of I data I have, but with much less lines.
So imagine I have a txt file like this:
'''
Useless information 1
Useless information 2
Useless information 3
Measurement:
Len. (cm)   :length of the object
Hei. (cm)   :height of the object
Tp.         :type of the object
~A DATA
10  5   2
8   7   2
5   6   1
9   9   1
'''
and I would like to put the values below '~A DATA' as a DataFrame. I already managed to get the DataFrame without column names (although it got a little messy as there are lines nonsense in my code) as you can see:
with open(r'C:\Users\Lucas\Desktop\...\text.txt') as file:
    for line in file:
        if line.startswith('~A'):
           measures = line.split()[len(line):]
           break
    df = pd.read_csv(file, names=measures, sep='~A', engine='python')
newdf = df[0].str.split(expand = True)
newdf()
    0  1  2
0  10  5  2
1   8  7  2
2   5  6  1
3   9  9  1
Now, I would like to put 'Len', 'Hei' and 'Tp' from the text as column names on the DataFrame. Just these measurement codes (without the consequent strings). How can I do that to have a df like this?
    Len  Hei  Tp
  0  10   5   2
  1   8   7   2
  2   5   6   1
  3   9   9   1
One of the solutions would be to split every line below the string 'Measurement' (or beginning with the line 'Len...') till every line above the string '~A' (or ending with line 'Tp'). And then split every line we got. But I don't know how to do that.
 
     
    