Python序列循环移位的3种方法
第一种方法:特点是直接、容易理解,缺点是速度慢,只能实现循环左移。
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下载文件的若干种方法汇总
压缩文件可以直接放到下载器里面下载的 you-get 连接 下载任意文件 重点 用python下载文件的若干种方法汇总 写文章 用python下载文件的若干种方法汇总 zhangqibot发表于Met ...
- 基础必备 | Python处理文件系统的10种方法
作者 | Jeff Hale 译者 | 风车云马:责编 | Jane,Rachel 出品 | Python大本营(ID:pythonnews) [导读]在编写一些Python程序的时候,我们常常需要与 ...
- 测试Python下载图片的三种方法
简 介: 通过Python软件包对网络URL图片链接进行下载,可以加快后期处理.本文测试了urllib, request两个软件包对图片进行下载效果.如果图片原网页有了防止下载机制,是无法下载图片. ...
- python使用方法视频-Python读取视频的两种方法(imageio和cv2)
用python读取视频有两种主要方法,大家可依据自己的需求进行使用. 方法一: 使用imageio库,没有安装的可用pip安装或自己下载,安装好后重启终端即可调用. import pylab impo ...
- 怎么在python下载网站内容-Python下载网页的几种方法
get和post方式总结 get方式:以URL字串本身传递数据参数,在服务器端可以从'QUERY_STRING'这个变量中直接读取,效率较高,但缺乏安全性,也无法来处理复杂的数据(只能是字符串,比如在 ...
- python学习音频-详解python播放音频的三种方法
第一种 使用pygame模块 pygame.mixer.init() pygame.mixer.music.load(self.wav_file) pygame.mixer.music.set_vol ...
- python可以播放音乐吗_详解python播放音频的三种方法
第一种 使用pygame模块 pygame.mixer.init() pygame.mixer.music.load(self.wav_file) pygame.mixer.music.set_vol ...
- python调用cmd命令释放端口_详解python调用cmd命令三种方法
目前我使用到的python中执行cmd的方式有三种 使用os.system("cmd") 该方法在调用完shell脚本后,返回一个16位的二进制数,低位为杀死所调用脚本的信号号码, ...
- python遍历数组的两种方法及将print的内容写入文件中
python遍历数组的两种方法 第一种,最常用的,通过for in遍历数组 colours = ["red","green","blue"] ...
最新文章
- python多边形裁剪
- C语言煎饼排序Pancake sort算法(附完整源码)
- Java StringBuilder getChars()方法与示例
- Linux中的mce处理--mce学习笔记
- win10激活时间(win10激活时间查询)
- 计算机和音乐的联系,音乐和数学的联系
- 2016,云计算行业走向何方?
- 关于WEB服务器硬件配置,你了解多少
- [PTA练习] 愿天下有情人都是失散多年的兄妹(25分)
- python3抓取-双色球开奖的所有历史数据-2003年始
- Matlab之图像空间变换(六)
- vc 判断哪个按键 被按下 消息 按键 状态
- php风格模板,phpwind冷色调整站风格模板
- 《黑白团团队》第八次团队作业:Alpha冲刺 第一天
- 分享程序员面试的7个技巧
- WinSCP(版本5.7.6)中文文件名显示乱码
- 上课案列-翻牌游戏(重置、历史记录)
- 制作MacOS U盘安装盘教程
- 华工《计算机应用基础 简答题》,华工《计算机应用基础》随堂练习
- Hadoop——开源分布式计算平台简介
热门文章
- 极光推送 简书android,(Android)react-native集成极光推送
- java 改为matlab_用面向对象的方法将一段JAVA代码转化为matlab
- java 字符菜单_java该怎么写左侧菜单树
- 上海阅文集团android面试题,2018年阅文集团PHP工程师面试题分享
- asp对php预览,Dreamweaver中预览PHP和ASP
- java 增 删 查 改_如何对java链表进行增、删、查、改操作
- 计算机应用科学计算文献,计算机应用参考文献
- linux php mysql 中文_Linux下PHP+MySQL+CoreSeek中文检索引擎配置 | 系统运维
- java project整合spring和hibernate
- Java Swing Mysql实现的员工工资管理系统项目源码附带视频指导运行教程