Po prostu zaczynam w pythonie i próbuję przetestować ciąg znaków wprowadzony przez użytkownika jako palindrom. Mój kod to:Python reverse() dla palindromów
x=input('Please insert a word')
y=reversed(x)
if x==y:
print('Is a palindrome')
else:
print('Is not a palindrome')
ta zawsze zwraca wartość false, ponieważ y staje się coś podobnego <reversed object at 0x00E16EF0>
zamiast odwróconym ciągiem. O czym ja nie wiem? Jak byś zakodował ten problem?
Tylko dlatego, że funkcja o nazwie jak coś, czego potrzebujesz, to nie znaczy, że możesz go użyć bez zobaczenia Definicja t w pierwszej kolejności. Spójrz na [tę stronę] (http://docs.python.org/library/functions.html#reversed). 'odwrócony' zwraca * iterator *, i jestem prawie pewien, że nie tego chciałeś. – darioo
co jeśli użyłem: 'y = [x] .reverse'? –
To naprawdę nie jest to, czego chcesz z wielu powodów: '[x]' tworzy listę pojedynczych elementów, gdzie pierwszym elementem jest 'x'. Następnie, po odwróceniu listy, otrzymujesz teraz listę zamiast iteratora, więc 'y' nie jest ciągiem znaków. – user470379