Kako preokrenuti niz Python (5 metode)

Niz je uređeni popis ili niz znakova. Nizovi su jedna od struktura podataka koja dolazi s Python. Dok radite sa nizovima u Python, možda biste željeli da su svi znakovi obrnuti. Dobar primjer bi bio kada gradite igru ​​palindroma.

Obrnuti niz ima svoj prvi znak kao zadnji znak i tako dalje. Međutim, Python ne dolazi s ugrađenom funkcijom za okretanje nizova, ali to su metode koje možete koristiti.

U ovom vodiču naučit ćete različite metode za preokretanje niza Python.

Metoda 1: Reverse string in Python koristeći For Loop

Prva metoda za okretanje nizova je korištenje for petlje kao u isječku koda u nastavku:

Python Kodirati:

# 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)}")

Izlaz:

String Reversal using a for loop
Original String: Guru99
Reversed String: 99uruG

Objašnjenje koda:

  • U ovom isječku koda možemo koristiti obrnuti_string() funkcija za preokret niza uzimajući zadano niz kao argument.
  • Unutar njega možemo stvoriti prazan niz za pohranjivanje obrnutog niza, a zatim prolazimo nizom u petlji.
  • Likovi su obrnuti i dodijeljeni obrnuti_niz promjenjiva.
  • Konačno, zadnji red u funkciji vraća obrnuti niz.
  • Za prikaz izlaza, napravite funkcionalni poziv unutar ispis () funkcija uz pomoć f-niza.

Metoda 2: Reverse string in Python pomoću while petlje

Korištenje dok petlja u Python također bi bila još jedna metoda za okretanje niza. Da razumijemo isječak koda u nastavku:

Python Kodirati:

# 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}")

Izlaz:

String Reversal using a while loop
Original String: Python
Reversed String: nohtyP

Objašnjenje koda:

  • U ovom Python koda, deklariramo niz koji treba obrnuti, zatim prazan niz za pohranjivanje obrnutog niza.
  • Zatim pronalazimo duljinu niza koja je dodijeljena računati promjenjiva.
  • The niz [broj – 1] u svakoj iteraciji dohvaća niz znakova od zadnjeg do prvog.
  • I spaja ih u obrnuti_niz a zatim smanjuje računati vrijednost.
  • Na kraju ispisujemo obrnuti niz.

Metoda 3: Python Reverse String koristeći Slicer Operahumka

Još jedna metoda za okretanje niza je korištenje operatora odsječka, da biste shvatili, pogledajte kod u nastavku:

Python Kodirati:

# 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)}")

Izlaz:

String Reversal using Slicer Operator
Original String: Let's guru99
Reversed String: 99urug s'teL

Objašnjenje koda:

  • Da biste stvorili obrnuti () funkcija koja uzima a niz kao argument, unutar njega
  • U ovom primjeru imamo a niz[::-1] slice operator za okretanje niz
  • Zatim se obrnuti niz dodjeljuje novoj varijabli koja se zove obrnuti_niz
  • Na kraju se vraća novi obrnuti niz

Metoda 4: Revumetanje niza Python pomoću funkcije reversed().

Također možemo obrnuti niz koristeći a obrnuto () Python funkcija, kod bi izgledao ovako:

Python Primjer koda:

# 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)}")

Izlaz:

String Reversal using reversed() function
Original String: guru99
Reversed String: 99urug

Objašnjenje koda:

  • U ovom kodu imamo a obrnuto () funkcija čiji je argument a niz.
  • Unutar njega smo inicijalizirali prazan niz.
  • Spajamo ga s izlazom obrnuto (niz) pomoću pridružiti() funkcija.
  • Izvan obrnuto () funkciju, deklarirali smo niz za obrnuto, tada ispisujemo izvorni niz i obrnuti niz.

Metoda 5: Python Reverse String pomoću rekurzije

Rekurzija znači da definirana funkcija poziva samu sebe. Za rekurzivnu funkciju se kaže da je rekurzivna kada poziva samu sebe. Da biste to bolje razumjeli, pogledajte sljedeći primjer koda:

Python Kodirati:

# 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)}")

Izlaz:

String Reversal using Recursion
Original String: I love guru99
Reversed String: 99urug evol I

Objašnjenje koda:

  • U gornjem kodu deklarirali smo a obrnuti () funkcija koja uzima a niz kao argument, tijelo funkcije je an ako drugo izjava.
  • The if naredba provjerava je li duljina niza jednaka 0 i vraća niz, dok drugo izjava naziva obrnuti () funkcionira rekurzivno, reže zadnji indeks niza i dodaje ga na početak.

Zaključak

  • Ova Python udžbenik proveo vas je kroz preokretanje nizova koristeći različite metode Python.
  • Možemo koristiti funkciju reverse_string() za preokret niza uzimajući dani niz kao argument.
  • Također možete koristiti "for and while petlju" za obrnuto miješanje.
  • Možete tužiti obrnutu funkciju koja uzima niz kao argument.
  • Prilikom odabira ovih metoda, trebali biste uzeti u obzir njihovu izvedbu kao jedan od čimbenika.