對(duì)于一個(gè)給定的字符串,逆序輸出,這個(gè)任務(wù)對(duì)于python來(lái)說(shuō)是一種很簡(jiǎn)單的操作,畢竟強(qiáng)大的列表和字符串處理的一些列函數(shù)足以應(yīng)付這些問(wèn)題 了,今天總結(jié)了一下python中對(duì)于字符串的逆序輸出的幾種常用的方法
方法一:直接使用字符串切片功能逆轉(zhuǎn)字符串
>>> def strReverse(strDemo):
return strDemo[::-1]
>>> print(strReverse('jb51.net'))
ten.15bj
結(jié)果:
ten.15bj
方法二:遍歷構(gòu)造列表法
循環(huán)遍歷字符串, 構(gòu)造列表,從后往前添加元素, 最后把列表變?yōu)樽址?/p>
>>> 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
結(jié)果:
ten.15bj
方法三:使用reverse函數(shù)
將字符串轉(zhuǎn)換為列表使用reverse函數(shù)
>>> def strReverse(strDemo):
strList = list(strDemo)
strList.reverse()
return ''.join(strList)
>>> print(strReverse('jb51.net'))
ten.15bj
結(jié)果:
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
結(jié)果:
ten.15bj
方法五:遞歸實(shí)現(xiàn)
>>> def strReverse(strDemo):
if len(strDemo)=1:
return strDemo
return strDemo[-1]+strReverse(strDemo[:-1])
>>> print(strReverse('jb51.net'))
ten.15bj
結(jié)果:
ten.15bj
方法六:借助基本的Swap操作,以中間為基準(zhǔn)交換對(duì)稱位置的字符
>>> 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
結(jié)果:
ten.15bj
本文講解的python反轉(zhuǎn)(逆序)字符串的6種方法詳細(xì)請(qǐng)到這里,更多關(guān)于python反轉(zhuǎn)(逆序)字符串的方法請(qǐng)查看下面的相關(guān)鏈接
您可能感興趣的文章:- Python 實(shí)現(xiàn)反轉(zhuǎn)整數(shù)的案例(很容易懂的那種)
- python3整數(shù)反轉(zhuǎn)的實(shí)現(xiàn)方法
- python反轉(zhuǎn)列表的三種方式解析
- python對(duì)數(shù)組進(jìn)行反轉(zhuǎn)的方法
- python算法題 鏈表反轉(zhuǎn)詳解
- python簡(jiǎn)單實(shí)現(xiàn)整數(shù)反轉(zhuǎn)的畫(huà)解算法