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中的编码知识整理汇总
Jan 26 Python
Python调用C# Com dll组件实战教程
Oct 12 Python
django使用html模板减少代码代码解析
Dec 12 Python
python3+PyQt5重新实现自定义数据拖放处理
Apr 19 Python
使用Python实现在Windows下安装Django
Oct 17 Python
python+openCV利用摄像头实现人员活动检测
Jun 22 Python
用Python批量把文件复制到另一个文件夹的实现方法
Aug 16 Python
解决python web项目意外关闭,但占用端口的问题
Dec 17 Python
深入浅析python的第三方库pandas
Feb 13 Python
python设置环境变量的作用整理
Feb 17 Python
Python MySQL 日期时间格式化作为参数的操作
Mar 02 Python
什么是Python变量作用域
Jun 03 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 文件上传实例代码
2012/04/19 PHP
关于Sphinx创建全文检索的索引介绍
2013/06/25 PHP
PHP的Yii框架中YiiBase入口类的扩展写法示例
2016/03/17 PHP
PHP基于session.upload_progress 实现文件上传进度显示功能详解
2019/08/09 PHP
HTML IMG标签 onload 内存溢出导致浏览器CPU占用过高
2021/03/09 Javascript
使用jQuery.fn自定义jQuery翻页插件
2013/01/20 Javascript
JavaScript获取客户端计算机硬件及系统等信息的方法
2014/01/02 Javascript
元素未显示设置width/height时IE中使用currentStyle获取为auto
2014/05/04 Javascript
防止登录页面出现在frame中js代码
2014/07/22 Javascript
nodejs教程之入门
2014/11/21 NodeJs
JavaScript中捕获/阻止捕获、冒泡/阻止冒泡方法
2016/12/07 Javascript
JS实现AES加密并与PHP互通的方法分析
2017/04/19 Javascript
ES6中参数的默认值语法介绍
2017/05/03 Javascript
js+html5实现侧滑页面效果
2017/07/15 Javascript
Angularjs的$http异步删除数据详解及实例
2017/07/27 Javascript
js实现本地时间同步功能
2017/08/26 Javascript
js canvas实现简单的图像扩散效果
2020/06/28 Javascript
Angular4学习笔记router的简单使用
2018/03/30 Javascript
vue :src 文件路径错误问题的解决方法
2018/05/15 Javascript
js运算符的一些特殊用法
2018/07/29 Javascript
当vue路由变化时,改变导航栏的样式方法
2018/08/22 Javascript
vue-cli的build的文件夹下没有dev-server.js文件配置mock数据的方法
2019/04/17 Javascript
jquery 验证用户名是否重复代码实例
2019/05/14 jQuery
使用Vant完成Dialog弹框案例
2020/11/11 Javascript
[35:29]Secret vs VG 2018国际邀请赛淘汰赛BO3 第三场 8.23
2018/08/24 DOTA
举例讲解Python中的迭代器、生成器与列表解析用法
2016/03/20 Python
俄罗斯香水和化妆品购物网站:Л’Этуаль
2018/05/10 全球购物
基督教卡片、励志礼品、家居装饰等:DaySpring
2018/10/12 全球购物
高三毕业典礼主持词
2014/03/27 职场文书
心理健康活动总结
2014/04/30 职场文书
体育专业求职信
2014/07/16 职场文书
小浪底导游词
2015/02/12 职场文书
后勤工作个人总结
2015/02/28 职场文书
2015年房产经纪人工作总结
2015/05/15 职场文书
浅谈Python从全局与局部变量到装饰器的相关知识
2021/06/21 Python
TypeScript中条件类型精读与实践记录
2021/10/05 Javascript