Textdatei verarbeiten

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
Timmbo97
User
Beiträge: 4
Registriert: Mittwoch 13. Dezember 2017, 18:16

Guten Abend,
Ich muss eine Textdatei in Python einlesen und verarbeiten. Es ist ein Rezept, dass wie folgt aufgebaut ist:
XXX für den Boden
YYY für die Creme
ZZZ für den Guss
usw

fo = open("CheeseCake.txt", "r")
lines = fo.read().splitlines()

b = list()
c = list()
g = list()

for i in range(0, len(lines)):
if lines.find("Boden"):
b.append(lines)
elif lines.find("Creme"):
c.append(lines)
else:
g.append(lines)
print(b, c, g)

fo.close()

Ich habe also versucht drei Listen anzulegen und die einzelnen Zeilen diesen Listen zuzuordnen um sie danach sortieren zu können. Aber bisher hat es nicht geklappt, weil die Liste dennoch leer sind...

LG pytnoob

PS: Sorry, aber ich bin neu und kenne mich mit diesem Forum nicht aus, daher hab ich den Code nur kopiert.
Sirius3
User
Beiträge: 17737
Registriert: Sonntag 21. Oktober 2012, 17:20

@Timmbo97: nein, alle Zeilen landen in der Liste `b`, weil `find` nicht das macht, was Du denkst. Über einen Index zu iterieren macht man nicht, weil man auch direkt über die Elemente der Liste (oder hier noch besser über das Fileobjekt) iterieren kann. Dateien öffnet man am besten in Kombination mit dem with-Statement.

Welchen Operator Du am besten statt `find` benutzen sollst, mußt Du selbst herausfinden. Ich will ja nicht Deine Hausaufgaben machen.

Für den Code gibts Codetags, die Du über diesem Editfeld als Dropdown findest.
Timmbo97
User
Beiträge: 4
Registriert: Mittwoch 13. Dezember 2017, 18:16

Okay vielen Dank.
Eine Musterlösung war auch nicht erwünscht, aber jetzt tapp ich wenigstens nicht mehr im Dunkeln haha ;)
LG
Antworten