python 将字符串完成特定的向右移动方法

时间:2021-05-23

# 将字符串中的元素完成特定的向右移动,参数:字符串、移动长度 如:abcdef,移动2,结果:efabcd

#原始方法,基本思想:末尾元素移动到开头,其他的元素依次向后移动.代码如下:

def move(lt, n): lt = list(lt) #将字符串转换为列表 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语言编写的并未体现python这门语言的好处,下面列出几种方法,可以体现出Python的好处

def move(lt, n): lt = list(lt) #将字符串转换为列表 for i in range(n % len(lt)): #确定进行几次移动 lt.insert(0, lt.pop()) #通过列表的pop方法取出末尾元素,在通过insert函数将取出的元素插入到列表的首位 return "".join(lt) def move(lt, n): for i in range(n % len(lt)): #确定进行几次移动 lt = lt[-1] + lt[0:-1] #通过字符串的切片,切除最后一个元素,然后加上从开头到倒数第二个元素 return lt

以上两种方法可以体现出Python语言的简洁性,但作为程序员不能止步不前,C语言才是根本,第一种方法使用C语言的思想编用python语言编写的.

以上这篇python 将字符串完成特定的向右移动方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

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

相关文章