字符串反转

方法一:使用内置函数(切片)

思路:利用Python的切片特性直接反转字符串。

python 复制代码
def reverse_string_with_slice(s):
    return s[::-1]

# 测试
s = "hello"
print(reverse_string_with_slice(s))

方法二:双指针法

思路:将字符串转为列表,用左右指针交换字符直到中间。

python 复制代码
def 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() 函数可以返回一个反向迭代器,将其结果转换为字符串即可实现反转。

python 复制代码
def reverse_s(s):
    return ''.join(reversed(s)). 

# ''.join(reversed(s)) 这一步就利用 join 方法把这个反向迭代器里的元素连接成了一个完整的反转字符串。
#reversed(s) 返回的是一个 reversed 类型的迭代器对象,而不是具体的反转字符串内容
<reversed object at 0x7f8d1d8a0d30>


# 测试
s = "hello"
print(reverse_s(s))
相关推荐
白白糖43 分钟前
Day 52 卡玛笔记
python·算法·力扣
MYX_3091 小时前
Python 编程题 第四节:斐波那契数列、列表的复制、暂停后输出、成绩评级、统计字符
开发语言·python·学习
码界筑梦坊1 小时前
基于Flask的红袖网小说数据可视化分析系统
python·信息可视化·数据挖掘·数据分析·flask·毕业设计
Ven%1 小时前
dify接入语音转文本模型后报错: microphone not authorized
人工智能·python·docker·dify
花果山-马大帅1 小时前
机器学习之集成学习思维导图
人工智能·python·机器学习·集成学习
东方巴黎~Sunsiny1 小时前
FastExcel vs EasyExcel vs Apache POI:三者的全面对比分析
java·开发语言·python·apache
dreadp1 小时前
BiliBili视频下载-原理与实现Python+FFmpeg
前端·python·ffmpeg·自动化·json·音视频
上官-王野2 小时前
用win+python+pycharm 开发一个项目,负责档案审核
开发语言·python·pycharm