在 Python 中反转字符串

Azaz Farooq 2023年1月30日 2021年2月28日
  1. 在 Python 中使用切片方法反转字符串
  2. 在 Python 中使用循环反转字符串
  3. 在 Python 中使用 reversed() 函数反转字符串
  4. 在 Python 中使用递归方法反转字符串
在 Python 中反转字符串

本文将介绍一些在 Python 中反转字符串的方法。

在 Python 中使用切片方法反转字符串

这个方法使用分片操作符:来反转字符串。分片的起始索引是最后一个元素的索引,结束索引是第一个元素的索引(在这种情况下也可以省略)。步长为 -1,表示切片以步长为 1 向后退。

完整的示例代码如下。

str="LearnPython"

length_str=len(str)

sliced_str=str[length_str::-1] 
print ("The sliced string is:",sliced_str)

输出:

The sliced string is: nohtyPnraeL

在 Python 中使用循环反转字符串

在这个方法中,首先,我们创建一个空字符串来存储反转的字符串。给定字符串的长度作为索引保存在 i 变量中。while 循环一直持续到索引大于 0 为止。

完整的示例代码如下。

str = "LearnPython"
string_reversed=[]
i = len(str)
while i > 0: 
    string_reversed += str[i-1]
    i = i - 1 # decrement index
print("The Reversed String is", string_reversed) 

string_reversed += str[i-1] 语句将 str[i-1] 的值保存在反转的字符串中。i=i-1 递减索引,直到到达字符串的开头。

输出:

The Reversed String is ['n', 'o', 'h', 't', 'y', 'P', 'n', 'r', 'a', 'e', 'L']

在 Python 中使用 reversed() 函数反转字符串

reversed() 函数给出给定字符串的反向迭代器。它的元素通过使用 join() 方法由空字符串连接。

完整的示例代码如下。

str = "LearnPython"

reversed_string=''.join(reversed(str))

print("The Reversed String is", reversed_string)  

join() 方法将反转迭代产生的所有字符合并成一个新的字符串。

输出:

The Reversed String is nohtyPnraeL

在 Python 中使用递归方法反转字符串

我们可以使用递归函数对字符串进行反转。基本条件是,如果字符串长度等于 0,则返回字符串,如果不等于 0,则递归调用反转函数,除了第一个字符外,对字符串部分进行切分,并将第一个字符连接到切分后的字符串末尾。

完整的示例代码如下。

def reverse_string(string): 
    if len(string) == 0: 
        return string 
    else: 
        return reverse_string(string[1:]) + string[0] 
  
string = "LearnPython"
  
print ("The original string  is : ",end="") 
print (string) 
  
print ("The reversed string is : ",end="") 
print (reverse_string(string))  
  

输出:

The original string  is : LearnPython
The reversed string(using loops) is : nohtyPnraeL

相关文章 - Python String