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 示例分享---逻辑推理编程解决八皇后
Jul 20 Python
Python中统计函数运行耗时的方法
May 05 Python
Python中super()函数简介及用法分享
Jul 11 Python
Python中偏函数用法示例
Jun 07 Python
Python 从一个文件中调用另一个文件的类方法
Jan 10 Python
react+django清除浏览器缓存的几种方法小结
Jul 17 Python
TensorFlow基于MNIST数据集实现车牌识别(初步演示版)
Aug 05 Python
Django中自定义模型管理器(Manager)及方法
Sep 23 Python
Python无头爬虫下载文件的实现
Apr 02 Python
python简单实现最大似然估计&amp;scipy库的使用详解
Apr 15 Python
python程序如何进行保存
Jul 03 Python
Python实现对word文档添加密码去除密码的示例代码
Dec 29 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 Mysql日期和时间函数集合
2007/11/16 PHP
php统计文件大小,以GB、MB、KB、B输出
2011/05/29 PHP
php计算到指定日期还有多少天的方法
2015/04/14 PHP
php foreach如何跳出两层循环(详解)
2016/11/05 PHP
简述php环境搭建与配置
2016/12/05 PHP
用PHP的socket实现客户端到服务端的通信实例详解
2017/02/04 PHP
js实现的简洁网页滑动tab菜单效果代码
2015/08/24 Javascript
AngularJS ng-change 指令的详解及简单实例
2016/07/30 Javascript
AngularJS 中的Promise --- $q服务详解
2016/09/14 Javascript
vue.js+Element实现表格里的增删改查
2017/01/18 Javascript
详解webpack2+React 实例demo
2017/09/11 Javascript
RxJS的入门指引和初步应用
2019/06/15 Javascript
Promise扫盲贴
2019/06/24 Javascript
[01:12]快闪回顾DOTA2亚洲邀请赛(DAC) 静候2018新征程开启
2018/03/11 DOTA
Python Web框架Pylons中使用MongoDB的例子
2013/12/03 Python
python的迭代器与生成器实例详解
2014/07/16 Python
Python读大数据txt
2016/03/28 Python
Python基于高斯消元法计算线性方程组示例
2018/01/17 Python
Python后台管理员管理前台会员信息的讲解
2019/01/28 Python
Python实现的序列化和反序列化二叉树算法示例
2019/03/02 Python
python如何制作缩略图
2019/04/30 Python
Python 利用邮件系统完成远程控制电脑的实现(关机、重启等)
2019/11/19 Python
python实现QQ邮箱发送邮件
2020/03/06 Python
详解Python IO口多路复用
2020/06/17 Python
浅析两列自适应布局的3种思路
2016/05/03 HTML / CSS
HTML5视频播放插件 video.js介绍
2018/09/29 HTML / CSS
Under Armour瑞典官方网站:美国高端运动科技品牌
2018/11/21 全球购物
一加手机美国官方网站:OnePlus美国
2019/09/19 全球购物
求职自我评价范文100字
2014/09/23 职场文书
财务稽核岗位职责
2015/04/13 职场文书
学习焦裕禄观后感
2015/06/09 职场文书
超市主管竞聘书
2015/09/15 职场文书
导游词之山海关
2019/12/10 职场文书
python全面解析接口返回数据
2022/02/12 Python
使用python求解迷宫问题的三种实现方法
2022/03/17 Python
Python TypeError: ‘float‘ object is not subscriptable错误解决
2022/12/24 Python