Hilfe beim Zusammenfassen von Strings
Verfasst: Donnerstag 7. Oktober 2021, 10:21
Hallo,
ich habe ein Text Datei:
[GRID *453 823.392883300781108.500007629395
* 0.
GRID *454 838.928588867188108.500007629395
* 0.
GRID *455 854.464294433594108.500007629395
* 0.
GRID *456 870. 108.500007629395
* 0.
DMIG* KAAX 231 2
* 173 1-6.628461386E+04
* 173 2-1.025054272E+05
* 174 1-2.728484105E-12
* 174 2-1.916495397E+05
* 175 1 6.628461386E+04
* 175 2-1.025054226E+05
* 230 1 1.818989404E-12
* 230 2 7.470106498E+04
* 230 6-2.024253482E+02
* 231 1-2.910383046E-11
* 231 2 6.439187720E+05
DMIG* KAAX 231 3
* 173 3 2.098778344E+03
* 173 4 8.045980606E+03
* 173 5-8.238491053E+03
* 174 3-3.414240650E+04
* 174 4-2.481645565E+05
* 174 5-1.026505590E-02
* 175 3 2.098777152E+03
* 175 4 8.045980602E+03
* 175 5 8.238480788E+03
* 230 3-3.390544390E+04
* 230 4 2.066723795E-02
* 230 5 2.472436368E+05
* 231 3 1.277006144E+05
DMIG* MUG1T 9598 0
* 1600 4 1.000000000E+00
DMIG* MUG1T 9599 0
* 1600 5 1.000000000E+00
DMIG* MUG1T 9600 0
* 1600 6 1.000000000E+00
DMIG* MUG1T 9601 0
* 1601 1 1.000000000E+00
DMIG* MUG1T 9602 0]
welche ich in eine Matrix umformen muss. Mich interessieren nur die Einträge von DMIG* KAAX , die restlichen habe ich bereits mit dem Code:
Datei = Datei.split()
def loeschen_vor_KAAX(file): #löscht alles vor KAAX
index = Datei.index('KAAX')
del Datei [ : index]
return Datei
loeschen_vor_KAAX(Datei)
def loeschen_nach_KAAX(file): #abhängig von MUG1T in diesem Fall
index = Datei.index('MUG1T')
del Datei[index -1 : ]
return Datei
loeschen_nach_KAAX(Datei)
#Findet alle KAAX Einträge
indexes = [i for i, j in enumerate(Datei) if j == 'KAAX']
print(indexes)
print(Datei)
gelöscht. Jetzt besitze ich eine Liste mit vielen strings. Ich würde gerne die Strings so trennen, dass die Einträge eines KAAX eintrages zusammen gehören. Also die Einträge von indexes[0] bis indexes[1]-1 und die Einträge von indexes[1] bis zum Ende zusammen gefasst werden. Hierfür fehlt mir das nötige wissen. Mit welchen Funktionen bzw. mit welchem Code kann ich diese Strings zusammen fassen?
ich habe ein Text Datei:
[GRID *453 823.392883300781108.500007629395
* 0.
GRID *454 838.928588867188108.500007629395
* 0.
GRID *455 854.464294433594108.500007629395
* 0.
GRID *456 870. 108.500007629395
* 0.
DMIG* KAAX 231 2
* 173 1-6.628461386E+04
* 173 2-1.025054272E+05
* 174 1-2.728484105E-12
* 174 2-1.916495397E+05
* 175 1 6.628461386E+04
* 175 2-1.025054226E+05
* 230 1 1.818989404E-12
* 230 2 7.470106498E+04
* 230 6-2.024253482E+02
* 231 1-2.910383046E-11
* 231 2 6.439187720E+05
DMIG* KAAX 231 3
* 173 3 2.098778344E+03
* 173 4 8.045980606E+03
* 173 5-8.238491053E+03
* 174 3-3.414240650E+04
* 174 4-2.481645565E+05
* 174 5-1.026505590E-02
* 175 3 2.098777152E+03
* 175 4 8.045980602E+03
* 175 5 8.238480788E+03
* 230 3-3.390544390E+04
* 230 4 2.066723795E-02
* 230 5 2.472436368E+05
* 231 3 1.277006144E+05
DMIG* MUG1T 9598 0
* 1600 4 1.000000000E+00
DMIG* MUG1T 9599 0
* 1600 5 1.000000000E+00
DMIG* MUG1T 9600 0
* 1600 6 1.000000000E+00
DMIG* MUG1T 9601 0
* 1601 1 1.000000000E+00
DMIG* MUG1T 9602 0]
welche ich in eine Matrix umformen muss. Mich interessieren nur die Einträge von DMIG* KAAX , die restlichen habe ich bereits mit dem Code:
Datei = Datei.split()
def loeschen_vor_KAAX(file): #löscht alles vor KAAX
index = Datei.index('KAAX')
del Datei [ : index]
return Datei
loeschen_vor_KAAX(Datei)
def loeschen_nach_KAAX(file): #abhängig von MUG1T in diesem Fall
index = Datei.index('MUG1T')
del Datei[index -1 : ]
return Datei
loeschen_nach_KAAX(Datei)
#Findet alle KAAX Einträge
indexes = [i for i, j in enumerate(Datei) if j == 'KAAX']
print(indexes)
print(Datei)
gelöscht. Jetzt besitze ich eine Liste mit vielen strings. Ich würde gerne die Strings so trennen, dass die Einträge eines KAAX eintrages zusammen gehören. Also die Einträge von indexes[0] bis indexes[1]-1 und die Einträge von indexes[1] bis zum Ende zusammen gefasst werden. Hierfür fehlt mir das nötige wissen. Mit welchen Funktionen bzw. mit welchem Code kann ich diese Strings zusammen fassen?