方法一:使用内置函数(切片)
思路:利用Python的切片特性直接反转字符串。
pythondef reverse_string_with_slice(s): return s[::-1] # 测试 s = "hello" print(reverse_string_with_slice(s))
方法二:双指针法
思路:将字符串转为列表,用左右指针交换字符直到中间。
pythondef reverse_string_with_two_pointers(s): s = list(s) left, right = 0, len(s) - 1 while left < right: s[left], s[right] = s[right], s[left] left += 1 right -= 1 return ''.join(s) # 测试 s = "hello" print(reverse_string_with_two_pointers(s))
方法三:使用内置的 reversed()
函数
reversed()
函数可以返回一个反向迭代器,将其结果转换为字符串即可实现反转。
pythondef reverse_s(s): return ''.join(reversed(s)). # ''.join(reversed(s)) 这一步就利用 join 方法把这个反向迭代器里的元素连接成了一个完整的反转字符串。 #reversed(s) 返回的是一个 reversed 类型的迭代器对象,而不是具体的反转字符串内容 <reversed object at 0x7f8d1d8a0d30> # 测试 s = "hello" print(reverse_s(s))