Hur man vänder en sträng in Python (5 metoder)
En sträng är en ordnad lista eller en sekvens av tecken. Strängar är en av de datastrukturer som följer med Python. När du arbetar med strängar i Python, kanske du vill ha alla tecken omvända. Ett bra exempel skulle vara när du bygger ett palindromspel.
En omvänd sträng har sitt första tecken som sista tecken och så vidare. Dock, Python kommer inte med en inbyggd funktion för att vända strängar, men det är metoder du kan använda.
I den här handledningen lär du dig olika metoder för att vända strängen in Python.
Metod 1: Reverse stränga in Python använder en For Loop
Den första metoden för att vända strängar är att använda en for-loop som i kodavsnittet nedan:
Python Koda:
# function for reversing a string def reverse_string(string): # an empty string for storing reversed string reversed_string = "" # looping through the string for char in string: # reversing the string reversed_string = char + reversed_string # returning a reversed string return reversed_string # the string to reverse string = "Guru99" # printing a message print(f"String Reversal using a for loop") # printing the original string print(f"Original String: {string}") # making a functional call inside a print function using an f-string print(f"Reversed String: {reverse_string(string)}")
Produktion:
String Reversal using a for loop Original String: Guru99 Reversed String: 99uruG
Kodförklaring:
- I det här kodavsnittet kan vi använda reverse_string() funktion för strängvändning med en given sträng som ett argument.
- Inuti den kan vi skapa en tom sträng för att lagra den omvända strängen, sedan går vi igenom strängen.
- Tecknen är omvända och tilldelas till omvänd_sträng variabel.
- Slutligen returnerar den sista raden i funktionen den omvända strängen.
- För att visa utdata, gör ett funktionellt samtal inuti skriva ut() funktion med hjälp av en f-sträng.
Metod 2: Reverse stränga in Python använder en While Loop
Med hjälp av en medan loop in Python skulle också vara en annan metod för att vända en sträng. Låt oss förstå kodavsnittet nedan:
Python Koda:
# declaring a string to reverse string = "Python" # initializing an empty string to store the reversed string reversed_string = "" # printing a message print(f"String Reversal using a while loop") # printing the original string print(f"Original String: {string}") # find length of a string and store in count variable count = len(string) # a while loop for looping through the string characters while count > 0: # save the value of str[count-1] in reversed_string reversed_string += string[count - 1] # decrementing index count = count - 1 print(f"Reversed String: {reversed_string}")
Produktion:
String Reversal using a while loop Original String: Python Reversed String: nohtyP
Kodförklaring:
- I detta Python kod, förklarar vi att en sträng ska vändas, sedan en tom sträng för att lagra den omvända strängen.
- Vi hittar sedan stränglängden som är tilldelad till räkna variabel.
- Smakämnen sträng [antal – 1] i varje iteration hämtar strängens tecken från sista till första.
- Och sammanfogar dem till omvänd_sträng och minskar sedan räkna värde.
- Slutligen trycker vi den omvända strängen.
Metod 3: Python Reverse String med Slicer Operator
En annan metod för att vända en sträng är att använda en segmentoperator, för att få huvudet runt den, se koden nedan:
Python Koda:
# function to reverse a string def reverse(string): # the slice syntax reversed_string = string[::-1] return reversed_string # declaring a string to reverse string = "Let's guru99" # printing a message print(f"String Reversal using Slicer Operator") # printing the original string print(f"Original String: {string}") # making a functional call inside a print function using an f-string print(f"Reversed String: {reverse(string)}")
Produktion:
String Reversal using Slicer Operator Original String: Let's guru99 Reversed String: 99urug s'teL
Kodförklaring:
- För att skapa en omvänd() funktion som tar en sträng som ett argument, inuti det
- I det här exemplet har vi en sträng[::-1] skivoperator för att vända sträng
- Sedan tilldelas den omvända strängen en ny variabel som kallas omvänd_sträng
- Slutligen returneras den nya omvända strängen
Metod 4: Revslå in en sträng Python med funktionen reversed()
Vi kan också vända en sträng med a omvänd () Python funktion skulle koden se ut så här:
Python Kodexempel:
# function to reverse a string def reverse(string): # reversed() function inside the join() function string = "".join(reversed(string)) # returning the reversed string return string # declaring a string to reverse string = "guru99" # printing a message print(f"String Reversal using reversed() function") # printing the original string print(f"Original String: {string}") # making a functional call inside a print function using an f-string print(f"Reversed String: {reverse(string)}")
Produktion:
String Reversal using reversed() function Original String: guru99 Reversed String: 99urug
Kodförklaring:
- I den här koden har vi en omvänd () funktion vars argument är a sträng.
- Inuti den har vi initierat en tom sträng.
- Vi sammanfogar det med utgången av omvänd (sträng) med Ansluta sig() funktion.
- Utanför omvänd () funktion, har vi förklarat att en sträng ska vända, sedan skriver vi ut den ursprungliga strängen och den omvända strängen.
Metod 5: Python Reverse String med Rekursion
Rekursion betyder en definierad funktion som anropar sig själv. En rekursiv funktion sägs vara rekursiv när den kallar sig själv. För att förstå det bättre titta på följande kodexempel:
Python Koda:
# a function to reverse a string def reverse(string): # Checking the length of string if len(string) == 0: return string # reversing string if len(string) != 0 else: # recursively calling the reverse() function return reverse(string[1:]) + string[0] # declaring a string to reverse string = "I love guru99" # printing a message print(f"String Reversal using Recursion") # printing the original string print(f"Original String: {string}") # making a functional call inside a print function using an f-string print(f"Reversed String: {reverse(string)}")
Produktion:
String Reversal using Recursion Original String: I love guru99 Reversed String: 99urug evol I
Kodförklaring:
- I ovanstående kod har vi deklarerat a omvänd () funktion som tar en sträng som ett argument är funktionens kropp en om annat uttalande.
- Smakämnen if uttalandet kontrollerar om strängens längd är ekvivalent med 0 och returnerar strängen, medan annars uttalande kallar omvänd() funktion rekursivt, skär upp det sista indexet i strängen och lägger till det i början.
Slutsats
- Denna Python handledning har lett dig genom att vända strängar med olika metoder i Python.
- Vi kan använda funktionen reverse_string() för strängvändning med en given sträng som argument.
- Du kan också använda "for and while loop" för omvänd omrörning.
- Du kan stämma omvänd funktion som tar en sträng som argument.
- När du väljer dessa metoder bör du överväga deras prestanda som en av faktorerna.