Odwróć ciąg znaków w Pythonie

Nie ma wbudowanej funkcji reverse dla obiektu Python's str. Jaki jest najlepszy sposób na zaimplementowanie tej metody?

Jeśli dostarczając bardzo zwięzłą odpowiedź, proszę rozwinąć jej skuteczność. Na przykład, czy obiekt str jest konwertowany na inny obiekt, itp.

Rozwiązanie

Co powiesz na:

>>> 'hello world'[::-1]
'dlrow olleh'

To jest składnia extended slice. Działa ona przez wykonanie [begin:end:step] - przez opuszczenie begin i end i podanie kroku -1, odwraca łańcuch.

Komentarze (2)

@Paolo's s[::-1] jest najszybszy; wolniejsze podejście (może bardziej czytelne, ale to's dyskusyjne) jest ''.join(reversed(s)).

Komentarze (4)

Odwróć ciąg znaków w pythonie bez użycia reversed() lub [::-1]

def reverse(test):
    n = len(test)
    x=""
    for i in range(n-1,-1,-1):
        x += test[i]
    return x
Komentarze (1)