python3反转字符串的3种方法

前段时间看到letcode上的元音字母字符串反转的题目,今天来研究一下字符串反转的内容。主要有三种方法:

1.切片法(最简洁的一种)
#切片法
def reverse1(): s=input("请输入需要反转的内容:") return s[::-1] reverse1() #运行结果 In [23]: def reverse1(): ...: s=input("请输入需要反转的内容:") ...: return s[::-1] ...: ...: reverse1() 请输入需要反转的内容:你是一个小南瓜 Out[23]: '瓜南小个一是你' 

参考stackflow上的答案
原理是:This is extended slice syntax. It works by doing [begin:end:step] - by leaving begin and end off and specifying a step of -1, it reverses a string.

2.递归
#递归反转
def reverse2(s): if s=="": return s else: return reverse2(s[1:])+s[0] reverse2("sidfmawsmdisd是当面问") #运行结果 In [24]: def reverse2(s): ...: if s=="": ...: return s ...: else: ...: return reverse2(s[1:])+s[0] ...: ...: reverse2("sidfmawsmdisd是当面问") Out[24]: '问面当是dsidmswamfdis' 
3.借用列表,使用reverse()方法

Python中自带reverse()函数,可以处理列表的反转,来看示例:

In [25]: l=['a', 'b', 'c', 'd']
    ...: l.reverse()
    ...: print (l) ['d', 'c', 'b', 'a'] 

reverse()函数将列表的内容进行了反转,借助这个特性,可以先将字符串转换成列表,利用reverse()函数进行反转后,再处理成字符串。

#借用列表,使用reverse()方法
def reverse3(s): l=list(s) l.reverse() print("".join(l)) reverse3("soifmi34pomOsprey,,是") #运行结果 In [26]: def reverse3(s): ...: l=list(s) ...: l.reverse() ...: print("".join(l)) ...: ...: reverse3("soifmi34pomOsprey,,是") ...: 是,,yerpsOmop43imfios 

今天的学习就到这里。贴上letcode上元音字母反转的地址,待后续研究。



作者:3230
链接:https://www.jianshu.com/p/c61279736a03
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

转载于:https://www.cnblogs.com/fengff/p/10367136.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值