python面试题 - 字符串反转(reduce)

方法一、

使用切片方法

s = 'helloword'
r = s[::-1]
print(r)  # drowolleh

方法二、reverse

s = 'helloword'
s1 = list(s)  # 先转列表
print(s1)  # ['h', 'e', 'l', 'l', 'o', 'w', 'o', 'r', 'd']

s1.reverse()  # 列表反转
print(s1)  # ['d', 'r', 'o', 'w', 'o', 'l', 'l', 'e', 'h']

print(''.join(s1))  #  列表转字符串  drowolleh

方法三、

使用 reduce 函数,

使用reduce需要先导入该函数,
reduce(function, sequence): function是一个函数,sequence是一个数据集合(元组、列表等)。
先将集合里的第1,2个参数参入函数执行,再将执行结果和第3个参数传入函数执行....,最终得到最后一个结果。
例子:

from functools import reduce
r = reduce(lambda x, y: x + y,[1,2,3,4])
print(r)  # 10

"""
第一步:1, 2传入:1 + 2 = 3
第二步:3 传入:  3 + 3 = 6
第三步:4 传入:  6 + 4 = 10
"""

lambda匿名函数,冒号前为参数,冒号后为表达式

from functools import reduce
s='helloword'
r = reduce(lambda x,y:y+x,s) #lambda匿名函数,冒号前为参数,冒号后为表达式
print(r)  # drowolleh
"""
第一步:'e' + 'h' = 'eh'
第二步:'l' + 'eh'= 'leh'
第三步: ....
"""


------分界线------

赚钱是一个结果,是我们做成一件事的结果。

我们想要赚钱,一定是把某件事情做好,然后会得到赚钱这个结果。

而做好一件事情,核心在于知识 + 能力。

我们必须花大量时间,多次重复学习、思考、练习,才能让自己的知识、能力提升。
posted @   西瓜_皮  阅读(284)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示