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'
第三步: ....
"""


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

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

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

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

我们必须花大量时间,多次重复学习、思考、练习,才能让自己的知识、能力提升。
原文地址:https://www.cnblogs.com/wwho/p/15579098.html