Text ab einer Bistimmten zeile lesen und schreiben

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
iris1255
User
Beiträge: 3
Registriert: Sonntag 5. März 2017, 19:27

Hallo Leute,

ich habe folgendes Problem:
ich muss aus einer Textdatei alles lesen und schreiben bis einer Bestimmten Zeile (was bisher gut klappt), dann möchte ich allerdings weiter später im text ab einer bestimmten zeile weiter lesen und schreiben:
PS: die Zeilennummern haben ich nicht bzw. sind immer wieder anders.
folgendes habe ich bisher errricht:

Code: Alles auswählen

inpfile = open("inpfile.txt")
outp = open("outp.txt","w")


for line in inpfile:
	if line.rstrip()=='** STEP: Step-1':
		break
    print line.rstrip()
damit kann ich alle zeilen schreiben bis exklusive die Zeile "**STEP:STEP-1"

nun möchte ich ab Zeile "**STEP:STEP-2" weiterschreiben.

ich hoffe, ich habe mein Vorhaben genaue genug beschrieben und bin sehr dankbar für eure Tipps!

Gruß
Zuletzt geändert von Anonymous am Sonntag 5. März 2017, 20:50, insgesamt 1-mal geändert.
Grund: Quelltext in Python-Codebox-Tags gesetzt.
Benutzeravatar
noisefloor
User
Beiträge: 3856
Registriert: Mittwoch 17. Oktober 2007, 21:40
Wohnort: WW
Kontaktdaten:

Hallo,

du musst dann da s`break` entfernen und dir eine Variable setzen, die entweder True oder False ist. Den Wahrheitswert änderst du in Abhängigkeit davon, ob eine Zeile mit "Stopwort" erreicht wurde. Und davon machst du dann abhängig, ob das print-statement ausgeführt wird.

Gruß, noisefloor
Benutzeravatar
snafu
User
Beiträge: 6740
Registriert: Donnerstag 21. Februar 2008, 17:31
Wohnort: Gelsenkirchen

Nur zum besseren Verständnis: Du willst ab einer bestimmten Textstelle einen zusätzlichen Text einbauen und dies dann so in der betreffenden Datei stehen haben:

Code: Alles auswählen

# Vorher
XXX
YYY
ZZZ

# Nachher
XXX
YYY
Hier sind jetzt
weitere Zeilen
ZZZ
Stimmt's oder meintest du es anders?
iris1255
User
Beiträge: 3
Registriert: Sonntag 5. März 2017, 19:27

nein ich möchte ein paar zeilen entfernen

# voher
aaa
bbb
ccc
ddd

# nachher

aaa
bbb
ddd
iris1255
User
Beiträge: 3
Registriert: Sonntag 5. März 2017, 19:27

also hier ist ein kurzer Textbeispiel: ziel ist alles in einer neuen Text datei zu schreiben ausser den Rotmarkierten bereich
mit dem Code oben kann ich den oberen Bereich schreiben nun fehlt nur noch deer untere bereich.:
** INTERACTIONS
**
** Interaction: Int-1
*Contact Pair, interaction=IntProp-1, small sliding, type=SURFACE TO SURFACE
Surf-Strahl, Surf-Platte
** ----------------------------------------------------------------
** STEP: Step-1
**
*Step, name=Step-1, nlgeom=NO, amplitude=RAMP
*Heat Transfer, end=PERIOD, deltmx=50.
0.01, 5., 5e-05, 5.,
**
** FIELD OUTPUT: F-Output-1
**
*Output, field, variable=PRESELECT
*Output, history, frequency=0
*End Step
** ----------------------------------------------------------------

** STEP: Step-2
**
*Step, name=Step-2, nlgeom=NO, amplitude=RAMP
*Heat Transfer, end=PERIOD, deltmx=50.
50., 5000., 0.05, 5000.,
**

*Output, field, variable=PRESELECT
*Output, history, frequency=0
*End Step
Antworten