Seite 1 von 1

zwei strings mit if vergleichen

Verfasst: Mittwoch 7. Januar 2009, 11:39
von py-mule
Hallo,

was mache ich hier falsch?

Code: Alles auswählen

        datnr = 10
        inhalt_a = open ("a%d.txt" %datnr, "r")

        for line in inhalt_a:
               print line   #nur zu Kontrolle
     
            antwort = raw_input ("Ihre Antwort: ")
            if line == antwort:
                print 'Erfolgsmeldung'
            else
                print 'leider flasch'
das Prog springt nur nach else. Was muss ich ändern, damit if eintrifft?

Danke und Gruß
py-mule

Verfasst: Mittwoch 7. Januar 2009, 11:46
von str1442
Der String muss gleich sein:

Code: Alles auswählen

In [1]: "Hallo\n" == "Hallo\n"
Out[1]: True
Zur Kontrolle von solcherlei Dingen solltest du übringens mit repr() arbeiten.

Verfasst: Mittwoch 7. Januar 2009, 11:47
von Leonidas
Was muss ich ändern, damit if eintrifft?
Die Einrückung korrigieren und Sicherstellen dass die Antwort des Users und die aus der Datei identisch sind. Ich schätze du hast da irgendwelche überflüssigen Whitespaces, wodurch die Antworten eben nicht gleich sind.

Verfasst: Mittwoch 7. Januar 2009, 11:58
von py-mule
Viele Dank.

Whitespace, das wars!
Jetzt funktioniert es.

So einfach kanns manchmal sein.

Gruß
py-mule