Python序列循环移位的3种方法推荐


Posted in Python onApril 09, 2018

第一种方法:特点是直接、容易理解,缺点是速度慢,只能实现循环左移。

def demo(lst, k):
  temp = lst[:]
  for i in range(k):
    temp.append(temp.pop(0))
  return temp

第二种方法:特点是速度快,并且自适应循环左移(k>0)和右移(k<0),缺点是涉及到算法,不容易理解。

def demo(lst, k):
  x = lst[:k]
  x.reverse()
  y = lst[k:]
  y.reverse()
  r = x+y
  return list(reversed(r))

最Pythonic的终极方法:使用切片,简单易理解,速度最快,可同时实现循环左移(k>0)和右移(k<0)。

def demo(lst, k):
  return lst[k:] + lst[:k]

以上这篇Python序列循环移位的3种方法推荐就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python文件写入实例分析
Apr 08 Python
Python itertools模块详解
May 09 Python
python实现将内容分行输出
Nov 05 Python
python和flask中返回JSON数据的方法
Mar 26 Python
Django框架登录加上验证码校验实现验证功能示例
May 23 Python
django 微信网页授权登陆的实现
Jul 30 Python
Pandas 缺失数据处理的实现
Nov 04 Python
Python函数式编程实例详解
Jan 17 Python
python连接mongodb集群方法详解
Feb 13 Python
python实现QQ邮箱发送邮件
Mar 06 Python
Python super()函数使用及多重继承
May 06 Python
Python3爬虫ChromeDriver的安装实例
Feb 06 Python
python中将一个全部为int的list 转化为str的list方法
Apr 09 #Python
python修改list中所有元素类型的三种方法
Apr 09 #Python
python 获取list特定元素下标的实例讲解
Apr 09 #Python
pandas.DataFrame 根据条件新建列并赋值的方法
Apr 08 #Python
Pandas标记删除重复记录的方法
Apr 08 #Python
Python将DataFrame的某一列作为index的方法
Apr 08 #Python
python DataFrame获取行数、列数、索引及第几行第几列的值方法
Apr 08 #Python
You might like
用PHP实现的生成静态HTML速度快类库
2007/03/31 PHP
PHP访问MYSQL数据库封装类(附函数说明)
2010/12/04 PHP
php数组函数序列之array_keys() - 获取数组键名
2011/10/30 PHP
微信支付的开发流程详解
2016/09/13 PHP
基于 Swoole 的微信扫码登录功能实现代码
2018/01/15 PHP
php接口实现拖拽排序功能
2018/04/23 PHP
让JavaScript拥有类似Lambda表达式编程能力的方法
2010/09/12 Javascript
javascript 小数取整简单实现方式
2014/05/30 Javascript
JavaScript中的getTime()方法使用详解
2015/06/10 Javascript
详细介绍jQuery.outerWidth() 函数具体用法
2015/07/20 Javascript
jquery form表单获取内容以及绑定数据
2016/02/24 Javascript
JS DOM实现鼠标滑动图片效果
2020/09/17 Javascript
AngularJS 使用ng-repeat报错 [ngRepeat:dupes]
2017/01/19 Javascript
在javascript中,null>=0 为真,null==0却为假,null的值详解
2017/02/22 Javascript
浅谈NodeJs之数据库异常处理
2017/10/25 NodeJs
webpack写jquery插件的环境配置
2017/12/21 jQuery
JS中promise化微信小程序api
2018/04/12 Javascript
详解VUE项目中安装和使用vant组件
2019/04/28 Javascript
vue本地打开build后生成的dist文件夹index.html问题
2019/09/04 Javascript
vue插件--仿微信小程序showModel实现模态提示窗功能
2020/08/19 Javascript
vue实现打地鼠小游戏
2020/08/21 Javascript
centos 下面安装python2.7 +pip +mysqld
2014/11/18 Python
Python md5与sha1加密算法用法分析
2017/07/14 Python
python删除文本中行数标签的方法
2018/05/31 Python
Python 删除连续出现的指定字符的实例
2018/06/29 Python
Python3.7中安装openCV库的方法
2018/07/11 Python
python爬虫之urllib库常用方法用法总结大全
2018/11/14 Python
python 与服务器的共享文件夹交互方法
2018/12/27 Python
欧洲最大的笔和书写专家:The Pen Shop
2017/03/19 全球购物
儿科护士自我鉴定
2013/10/14 职场文书
会计电算化应届生自荐信
2014/02/25 职场文书
计划生育标语
2014/06/23 职场文书
实习推荐信格式模板
2015/03/27 职场文书
二年级作文之动物作文
2019/11/13 职场文书
Python Pandas pandas.read_sql_query函数实例用法分析
2021/06/21 Python
一文了解MySQL二级索引的查询过程
2022/02/24 MySQL