如何在Python中反转字符串

如何在Python中反转字符串

Unicode字符的集合是Python字符串。Python有多种控制字符串的能力,但是Python字符串库不支持内建的”switch()”功能。然而,有许多方法可以反转字符串。以下是定义的反转Python字符串方法。

  • 使用for循环
  • 使用while循环
  • 使用切片操作符
  • 使用reversed()函数
  • 使用递归

使用for循环

在这里,我们将使用for循环来反转给定的字符串。

def reverse_string(str):
    str1 = ""   # Declaring empty string to store the reversed string
    for i in str:
        str1 = i + str1
    return str1    # It will return the reverse string to the caller function

str = "JavaTpoint"    # Given String     
print("The original string is: ",str)
print("The reverse string is",reverse_string(str)) # Function call

输出:

('The original string is: ', 'JavaTpoint')
('The reverse string is', 'tniopTavaJ')

解释-

以上代码中,我们传递了str参数并声明了reverse_string()函数。我们在函数体中声明了空字符串变量str1,它将存储反转后的字符串。

然后,for循环遍历给定字符串的每个部分,将每个字符连接在开头,并将结果保存在str1变量中。

在总循环之后,它将相反的请求字符串str1返回给调用者。结果显示在屏幕上。

使用while循环

我们也可以使用while循环来反转一个字符串。让我们了解下面的示例。

示例

# Reverse string
# Using a while loop

str = "JavaTpoint" #  string variable
print ("The original string  is : ",str) 
reverse_String = ""  # Empty String
count = len(str) # Find length of a string and save in count variable
while count > 0: 
    reverse_String += str[ count - 1 ] # save the value of str[count-1] in reverseString
    count = count - 1 # decrement index
print ("The reversed string using a while loop is : ",reverse_String)# reversed string

输出:

('The original string  is : ', 'JavaTpoint')
('The reversed string using a while loop is : ', 'tniopTavaJ')

解释:

在上面的代码中,我们声明了一个包含字符串值的str变量。我们引入了一个time circle,值为字符串的长度。

在每次迭代过程中,str[count – 1]的值会随着与reverse_String的连接而减少count值。当time circle完成其周期并返回相反顺序的请求字符串。

使用切片([])运算符

我们还可以使用 扩展切片运算符 来反转给定的字符串。让我们理解以下示例。

示例

#  Reverse a string  
# using  slice syntax 
# reverse(str) Function to reverse a string 
def reverse(str): 
    str = str[::-1] 
    return str 

s = "JavaTpoint"
print ("The original string  is : ",s) 
print ("The reversed string using extended slice operator  is : ",reverse(s))

输出:

('The original string  is : ', 'JavaTpoint')
('The reversed string(using extended slice syntax) is : ', 'tniopTavaJ')

解释:

开始、停止和步长是切片操作符通常接受的三个参数。我们提供了无需起始和结束文件的好处,这显示了开始记录为0,结束记录为n-1。-1是步长;它意味着字符串从末尾开始导航,并且到1个文件位置。

使用join函数的反转

Python提供了 reversed() 函数来反转字符串。让我们理解以下示例。

示例

#reverse a string using reversed() 
# Function to reverse a string 
def reverse(str): 
    string = "".join(reversed(str)) # reversed() function inside the join() function
    return string 

s = "JavaTpoint"

print ("The original string is : ",s) 
print ("The reversed string using reversed() is : ",reverse(s) )

输出:

('The original string is : ', 'JavaTpoint')
('The reversed string using reversed() is : ', 'tniopTavaJ')

解释:

在函数主体中,我们使用点操作符声明了一个空字符串。通过使用join()函数将reversed()字符串与空字符串分隔开的字符串连接起来,返回了反转后的字符串。

使用reverse()

递归也可以用于反转字符串。递归是一种能够调用自身的循环。请看下面的示例。

示例

# reverse a string  
# using recursion 

def reverse(str): 
    if len(str) == 0: # Checking the lenght of string
        return str 
    else: 
        return reverse(str[1:]) + str[0] 

str = "Devansh Sharma" 
print ("The original string  is : ", str)   
print ("The reversed string(using recursion) is : ", reverse(str))

输出:

('The original string is : ', 'JavaTpoint')
('The reversed string(using reversed) is : ', 'tniopTavaJ')

解释:

我们在上面的代码中定义了一个以字符串作为参数的函数。

在递归函数主体中,我们定义了递归的基础状态,即字符串的长度为0时,返回字符串本身,否则我们继续递归调用该函数。

将字符串的第一个字符通过切片运算符连接到切片字符串的末尾。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程