字符串反转

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

思路:利用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))
相关推荐
消失的旧时光-19436 分钟前
统一并发模型:线程、Reactor、协程本质是一件事(从线程到协程 · 第6篇·终章)
java·python·算法
zhaoyong2222 小时前
MySQL 存储过程中字符集与排序规则不匹配导致查询性能下降的解决方案
jvm·数据库·python
sinat_383437362 小时前
golang如何从Python转型Go开发_golang从Python转型Go开发攻略
jvm·数据库·python
rockey6272 小时前
基于AScript的python3脚本语言发布啦!
python·c#·.net·script·python3·eval·expression·function·动态脚本
gqk012 小时前
Python入门
python
Muyuan19983 小时前
28.Paper RAG Agent 开发记录:修复 LLM Rerank 的解析、Fallback 与可验证性
linux·人工智能·windows·python·django·fastapi
代码小书生3 小时前
statistics,一个统计的 Python 库!
开发语言·python
STLearner3 小时前
SIGIR 2026 | LLM × Graph论文总结(图增强LLM,GraphRAG,Agent,多模态,知识图谱,搜索,推
人工智能·python·深度学习·神经网络·机器学习·数据挖掘·知识图谱
FreakStudio3 小时前
MicroPython 内核开发者直接狂喜!这个 Claude 插件市场,把开发全流程做成了「对话式外挂」
python·单片机·嵌入式·面向对象·并行计算·电子diy
老陈说编程4 小时前
12. LangChain 6大核心调用方法:invoke/stream/batch同步异步全解析,新手也能轻松学会
开发语言·人工智能·python·深度学习·机器学习·ai·langchain