Kuinka kääntää merkkijono sisään Python (5 menetelmää)

Merkkijono on järjestetty luettelo tai merkkijono. Merkkijonot ovat yksi mukana tulevista tietorakenteista Python. Kun työskentelet merkkijonojen kanssa Python, haluat ehkä kääntää kaikki merkit päinvastaiseksi. Hyvä esimerkki olisi, kun rakennat palindromipeliä.

Käänteisen merkkijonon ensimmäinen merkki on viimeinen merkki ja niin edelleen. Kuitenkin, Python ei sisällä sisäänrakennettua toimintoa merkkijonojen kääntämiseksi, mutta ne ovat menetelmiä, joita voit käyttää.

Tässä opetusohjelmassa opit erilaisia ​​tapoja kääntää merkkijono Python.

Menetelmä 1: Reverse merkkijono sisään Python käyttämällä For Loopia

Ensimmäinen menetelmä merkkijonojen kääntämiseen on for-silmukan käyttäminen alla olevan koodinpätkän mukaisesti:

Python Koodi:

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

lähtö:

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

Koodin selitys:

  • Tässä koodinpätkässä voimme käyttää käänteinen_merkkijono() funktio merkkijonon käänteestä ottamalla annetun jono argumenttina.
  • Sen sisällä voimme luoda tyhjän merkkijonon käänteisen merkkijonon tallentamiseksi, sitten kiertelemme merkkijonoa.
  • Hahmot käännetään päinvastoin ja ne on määritetty käänteinen_merkkijono muuttuja.
  • Lopuksi funktion viimeinen rivi palauttaa käänteisen merkkijonon.
  • Näyttääksesi lähdön, soitat toiminnallisen puhelun sisällä Tulosta() funktio f-merkkijonon avulla.

Menetelmä 2: Reverse merkkijono sisään Python käyttäen While-silmukkaa

Käyttäen samalla silmukka sisään Python olisi myös toinen tapa kääntää merkkijono. Anna meidän ymmärtää alla oleva koodinpätkä:

Python Koodi:

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

lähtö:

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

Koodin selitys:

  • Tässä Python koodi, julistetaan merkkijono käännettäväksi ja sitten tyhjä merkkijono käänteisen merkkijonon tallentamiseksi.
  • Etsimme sitten merkkijonon pituuden, joka on määritetty laskea muuttuja.
  • - merkkijono[luku – 1] jokaisessa iteraatiossa hakee merkkijonomerkit viimeisestä ensimmäiseen.
  • Ja ketjuttaa ne yhteen käänteinen_merkkijono ja sitten vähentää laskea arvoa.
  • Lopuksi tulostamme käänteisen merkkijonon.

Menetelmä 3: Python Reverse String Slicerillä OperaTor

Toinen tapa kääntää merkkijono on slice-operaattorin käyttäminen, jotta pääset eroon siitä, katso alla oleva koodi:

Python Koodi:

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

lähtö:

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

Koodin selitys:

  • Luo a käänteinen() toiminto, joka vie a jono argumenttina, sen sisällä
  • Tässä esimerkissä meillä on a merkkijono[::-1] slice-operaattori peruuttaaksesi jono
  • Sitten käänteinen merkkijono osoitetaan uudelle muuttujalle nimeltä käänteinen_merkkijono
  • Lopuksi palautetaan uusi käänteinen merkkijono

Menetelmä 4: Revmerkkijonon syöttäminen Python käyttämällä reverse()-funktiota

Voimme myös kääntää merkkijonon käyttämällä a päinvastainen () Python funktio, koodi näyttäisi seuraavalta:

Python Esimerkki koodista:

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

lähtö:

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

Koodin selitys:

  • Tässä koodissa meillä on a päinvastainen () funktio, jonka argumentti on a jono.
  • Sen sisällä olemme alustaneet tyhjän merkkijonon.
  • Yhdistämme sen tulosteen kanssa käänteinen (merkkijono) käyttäen liittyä seuraan() toiminto.
  • Ulkopuolella päinvastainen () funktio, olemme ilmoittaneet merkkijonon käänteiseksi, sitten tulostamme alkuperäisen merkkijonon ja käänteisen merkkijonon.

Menetelmä 5: Python Reverse String käyttämällä rekursiota

Rekursio tarkoittaa määriteltyä funktiota, joka kutsuu itseään. Rekursiivisen funktion sanotaan olevan rekursiivinen, kun se kutsuu itseään. Ymmärtääksesi sen paremmin, katso seuraava koodiesimerkki:

Python Koodi:

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

lähtö:

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

Koodin selitys:

  • Yllä olevassa koodissa olemme ilmoittaneet a käänteinen () toiminto, joka vie a jono argumenttina funktion runko on an tai muuten lausuma.
  • - if lauseke tarkistaa, onko merkkijonon pituus yhtä suuri kuin 0, ja palauttaa merkkijonon, kun taas muu lausunto kutsuu käänteinen() funktio rekursiivisesti, viipaloi merkkijonon viimeisen indeksin ja lisää sen alkuun.

Yhteenveto

  • Tämä Python oppitunti on ohjannut sinut käänteisten merkkijonojen läpi eri menetelmillä Python.
  • Voimme käyttää reverse_string()-funktiota merkkijonon kääntämiseen ottamalla tietyn merkkijonon argumenttina.
  • Voit käyttää myös "for and while -silmukkaa" käänteiseen sekoittamiseen.
  • Voit haastaa käänteisen funktion, joka ottaa argumenttina merkkijonon.
  • Kun valitset näitä menetelmiä, sinun tulee harkita niiden suorituskykyä yhtenä tekijänä.