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
來源:簡書
簡書著作權歸作者所有,任何形式的轉載都請聯系作者獲得授權並注明出處。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM