python反转(逆序)字符串的6种方法详细

时间:2021-05-22

对于一个给定的字符串,逆序输出,这个任务对于python来说是一种很简单的操作,毕竟强大的列表和字符串处理的一些列函数足以应付这些问题 了,今天总结了一下python中对于字符串的逆序输出的几种常用的方法

方法一:直接使用字符串切片功能逆转字符串

>>> def strReverse(strDemo): return strDemo[::-1]>>> print(strReverse('jb51.net'))ten.15bj

结果:

ten.15bj

方法二:遍历构造列表法

循环遍历字符串, 构造列表,从后往前添加元素, 最后把列表变为字符串

>>> def strReverse(strDemo): strList=[] for i in range(len(strDemo)-1, -1, -1): strList.append(strDemo[i]) return ''.join(strList)>>> print(strReverse('jb51.net'))ten.15bj

结果:

ten.15bj

方法三:使用reverse函数

将字符串转换为列表使用reverse函数

>>> def strReverse(strDemo): strList = list(strDemo) strList.reverse() return ''.join(strList)>>> print(strReverse('jb51.net'))ten.15bj

结果:

ten.15bj

方法四:借助collections模块方法extendleft

>>> import collections>>> def strReverse(strDemo): deque1=collections.deque(strDemo) deque2=collections.deque() for tmpChar in deque1: deque2.extendleft(tmpChar) return ''.join(deque2)>>> print(strReverse('jb51.net'))ten.15bj

结果:

ten.15bj

方法五:递归实现

>>> def strReverse(strDemo): if len(strDemo)<=1: return strDemo return strDemo[-1]+strReverse(strDemo[:-1])>>> print(strReverse('jb51.net'))ten.15bj

结果:

ten.15bj

方法六:借助基本的Swap操作,以中间为基准交换对称位置的字符

>>> def strReverse(strDemo): strList=list(strDemo) if len(strList)==0 or len(strList)==1: return strList i=0 length=len(strList) while i < length/2: strList[i], strList[length-i-1]=strList[length-i-1], strList[i] i+=1 return ''.join(strList)>>> print(strReverse('jb51.net'))ten.15bj

结果:

ten.15bj

本文讲解的python反转(逆序)字符串的6种方法详细请到这里,更多关于python反转(逆序)字符串的方法请查看下面的相关链接

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章