Omvend en streng i Python

Der er ingen indbygget reverse-funktion for Python's str-objekt. Hvad er den bedste måde at implementere denne metode på?

Hvis du giver et meget kortfattet svar, bedes du uddybe effektiviteten. F.eks. om str-objektet konverteres til et andet objekt osv.

Løsning

Hvad med:

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

Dette er extended slice syntaks. Den fungerer ved at gøre [begin:end:step] - ved at lade begin og end være udeladt og angive et step på -1, vender den en streng om.

Kommentarer (2)

@Paolo's s[::-1] er hurtigst; en langsommere fremgangsmåde (måske mere læsbar, men det kan diskuteres) er ''.join(reversed(s)).

Kommentarer (4)

Omvend en streng i python uden at bruge reversed() eller [::-1]

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