Python reverse() für Palindrome

Ich bin einfach nur erste Schritte in python, und ich bin versucht zu testen, einen vom Benutzer eingegebenen string ein Palindrom ist. Mein code ist:

x=input('Please insert a word')
y=reversed(x)
if x==y:
    print('Is a palindrome')
else:
    print('Is not a palindrome')

Dieser immer false zurück, da y wird zu etwas, wie <reversed object at 0x00E16EF0> statt den umgedrehten string.
Was bin ich ignorant? Wie würden Sie gehen über die Programmierung dieses problem?

Nur weil eine Funktion heißt wie etwas, das Sie brauchen, bedeutet nicht, Sie können es verwenden, ohne zu sehen, es ist erste definition. Werfen Sie einen Blick auf dieser Seite. reversed gibt ein iterator, und ich bin mir ziemlich sicher, dass ist nicht das, was Sie wollte.
wie wäre es, wenn ich benutzt habe: y=[x].reverse ?
Das ist wirklich nicht das, was Sie wollen, entweder für mehrere Gründe: [x] erstellt ein einzelnes element der Liste, wo das erste element ist x. Wenn du dann die Rückseite der Liste, Sie erhalten nun eine Liste zurück, statt einen iterator, so y ist noch kein string.
okay... :/ Vielleicht ist das nicht der beste Weg, aber ich will einfach nur, um ein Gefühl für die lang... wie würde ich es tun, durch die Behandlung x als eine Liste von chars (ok, so einzelne Zeichen, strings), und der Umkehrung dieser Liste?

InformationsquelleAutor Matthew Sainsbury | 2011-03-05

Schreibe einen Kommentar