python 將字符串完成特定的向右移動方法
# 將字符串中的元素完成特定的向右移動,參數(shù):字符串、移動長度 如:abcdef,移動2,結(jié)果:efabcd
#原始方法,基本思想:末尾元素移動到開頭,其他的元素依次向后移動.代碼如下:
def move(lt, n): lt = list(lt) #將字符串轉(zhuǎn)換為列表 for i in range(n % len(lt)):#確定移動幾次,比如說移動從長度和列表的長度相同時,就沒必要移動 t = lt[len(lt) - 1] #取出末尾元素 for j in reversed(range(len(lt) - 1)): #逆序遍歷除末尾元素的列表 lt[j + 1] = lt[j] #將前一個元素的值賦值給后一個元素 lt[0] = t #將之前取出的末尾元素的值賦值給列表的首位 return "".join(lt) #將列表中拼接成字符串,并返回
上述方法是我基于C語言編寫的并未體現(xiàn)python這門語言的好處,下面列出幾種方法,可以體現(xiàn)出Python的好處
def move(lt, n): lt = list(lt) #將字符串轉(zhuǎn)換為列表 for i in range(n % len(lt)): #確定進(jìn)行幾次移動 lt.insert(0, lt.pop()) #通過列表的pop方法取出末尾元素,在通過insert函數(shù)將取出的元素插入到列表的首位 return "".join(lt) def move(lt, n): for i in range(n % len(lt)): #確定進(jìn)行幾次移動 lt = lt[-1] + lt[0:-1] #通過字符串的切片,切除最后一個元素,然后加上從開頭到倒數(shù)第二個元素 return lt
以上兩種方法可以體現(xiàn)出Python語言的簡潔性,但作為程序員不能止步不前,C語言才是根本,第一種方法使用C語言的思想編用python語言編寫的.
以上這篇python 將字符串完成特定的向右移動方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python實(shí)現(xiàn)mysql數(shù)據(jù)庫更新表數(shù)據(jù)接口的功能
這篇文章主要給大家介紹了關(guān)于Python如何實(shí)現(xiàn)mysql數(shù)據(jù)庫更新表數(shù)據(jù)接口功能的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。2017-11-11Python通過隊(duì)列實(shí)現(xiàn)進(jìn)程間通信詳情
這篇文章主要介紹了Python通過隊(duì)列實(shí)現(xiàn)進(jìn)程間通信詳情文章通過提出問題:在多進(jìn)程中,每個進(jìn)程之間是什么關(guān)系展開主題相關(guān)內(nèi)容,感興趣的朋友可以參考一下2022-06-06Python析構(gòu)函數(shù)__del__定義原理解析
這篇文章主要介紹了Python析構(gòu)函數(shù)__del__定義原理解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-11-11Python類的動態(tài)綁定實(shí)現(xiàn)原理
這篇文章主要介紹了Python類的動態(tài)綁定實(shí)現(xiàn)原理,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-03-03Python實(shí)現(xiàn)將多張圖片合成視頻并加入背景音樂
這篇文章主要為大家介紹了如何利用Python實(shí)現(xiàn)將多張圖片合成mp4視頻,并加入背景音樂。文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下2022-04-04python滑塊驗(yàn)證碼的破解實(shí)現(xiàn)
這篇文章主要介紹了python滑塊驗(yàn)證碼的破解實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11