在 Python 中反转字符串

Azaz Farooq 2023年10月10日
  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