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


Posted in Python onJune 11, 2019

# 将字符串中的元素完成特定的向右移动,参数:字符串、移动长度 如: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 将字符串完成特定的向右移动方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
pyramid配置session的方法教程
Nov 27 Python
python之yield表达式学习
Sep 02 Python
在Python中测试访问同一数据的竞争条件的方法
Apr 23 Python
Python爬取三国演义的实现方法
Sep 12 Python
python3学习笔记之多进程分布式小例子
Feb 13 Python
Flask入门之上传文件到服务器的方法示例
Jul 18 Python
Python 创建新文件时避免覆盖已有的同名文件的解决方法
Nov 16 Python
python验证身份证信息实例代码
May 06 Python
python实现视频读取和转化图片
Dec 10 Python
Python破解BiliBili滑块验证码的思路详解(完美避开人机识别)
Feb 17 Python
Tensorflow之MNIST CNN实现并保存、加载模型
Jun 17 Python
python实现简单的井字棋
May 26 Python
python itchat给指定联系人发消息的方法
Jun 11 #Python
使用Flask-Cache缓存实现给Flask提速的方法详解
Jun 11 #Python
使用Python实现将list中的每一项的首字母大写
Jun 11 #Python
Python中@property的理解和使用示例
Jun 11 #Python
Python实现将字符串的首字母变为大写,其余都变为小写的方法
Jun 11 #Python
详解Python3之数据指纹MD5校验与对比
Jun 11 #Python
Python自动抢红包教程详解
Jun 11 #Python
You might like
php smarty 二级分类代码和模版循环例子
2011/06/01 PHP
PHP写的加密函数,支持私人密钥(详细介绍)
2013/06/09 PHP
PHP中ob_start函数的使用说明
2013/11/11 PHP
php实例分享之通过递归实现删除目录下的所有文件详解
2014/05/15 PHP
Zend Framework实现具有基本功能的留言本(附demo源码下载)
2016/03/22 PHP
Windows2003下php5.4安装配置教程(IIS)
2016/06/30 PHP
Array.prototype.slice 使用扩展
2010/06/09 Javascript
使用jQuery的将桌面应用程序引入浏览器
2010/11/19 Javascript
学习JavaScript的最佳方法分享
2011/10/21 Javascript
JS弹出层的显示与隐藏示例代码
2013/12/27 Javascript
jQuery实现Flash效果上下翻动的中英文导航菜单代码
2015/09/22 Javascript
JS中微信小程序自定义底部弹出框
2016/12/22 Javascript
JavaScript实现动态增删表格的方法
2017/03/09 Javascript
详解react使用react-bootstrap当轮子造车
2017/08/15 Javascript
详解Vue单元测试case写法
2018/05/24 Javascript
vue利用v-for嵌套输出多层对象,分别输出到个表的方法
2018/09/07 Javascript
JSONP原理及应用实例详解
2018/09/13 Javascript
Python中正则表达式的用法实例汇总
2014/08/18 Python
python多重继承新算法C3介绍
2014/09/28 Python
使用python爬虫实现网络股票信息爬取的demo
2018/01/05 Python
python+matplotlib绘制饼图散点图实例代码
2018/01/20 Python
对python For 循环的三种遍历方式解析
2019/02/01 Python
浅谈python的输入输出,注释,基本数据类型
2019/04/02 Python
Python的log日志功能及设置方法
2019/07/11 Python
如何利用pygame实现简单的五子棋游戏
2019/12/29 Python
巧克力领导品牌瑞士莲美国官网:Lindt Chocolate美国
2016/08/25 全球购物
介绍一下UNIX启动过程
2013/11/14 面试题
新闻记者个人求职的自我评价
2013/11/28 职场文书
《湘夫人》教学反思
2014/02/21 职场文书
孝敬父母的演讲稿
2014/05/14 职场文书
2014年工程工作总结
2014/11/25 职场文书
2015年党员发展工作总结
2015/05/13 职场文书
民间借贷借条如何写
2015/05/26 职场文书
感谢信的技巧及范例
2019/05/15 职场文书
Java spring定时任务详解
2021/10/05 Java/Android
解决MySQL添加新用户-ERROR 1045 (28000)的问题
2022/03/03 MySQL