python使用reduce和lamba实现字符串反转解析

网友投稿 292 2022-08-26


python使用reduce和lamba实现字符串反转解析

在python中使用reduce和lamba实现字符串反转解析,例如将s = "abcdef"反转成 "fedcba"

代码实现

from functools import reduces = "abcdef"result = reduce(lambda x,y:y+x,s)print(result)

代码解析 在reduce方法的注释中,举了一个例子: For example, reduce(lambda x, y: x+y, [1, 2, 3, 4, 5]) calculates ((((1+2)+3)+4)+5). 也就说,在[1, 2, 3, 4, 5]这个列表中每一次都取两个元素作为x, y来进行函数计算,将计算的结果再作为x,然后将后面第3个元素作为y 第一次:x=1,y=2 第二次:x=1+2,y=3 第三次:x=1+2+3,y=4 第四次:x=1+2+3+4,y=5

同样的,应用在result = reduce(lambda x,y:y+x,s)中,也是这个效果,只不过x和y的位置调整了一下,最后拼接起来 第一次:x=a,y=b 第二次:x=ba,y=c 第三次:x=cba,y=d 第四次:x=dcba,y=e 第五次:x=edcba,y=f 第六次:x=fedcba,y=不存在 再拼接就是fedcba

注意python3内置函数已经取消了reduce方法,要从functools模块先引入


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:查看python内置的关键字(1.如何查看python语言中所有的关键字?)
下一篇:SpringBoot自定义maven
相关文章

 发表评论

暂时没有评论,来抢沙发吧~