python反轉(逆序)字符串的6種方法詳細
對於一個給定的字符串,逆序輸出,這個任務對於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反轉(逆序)字符串的方法請查看下面的相關鏈接
推薦閱讀:
- None Found