前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >列表元素循环移位中Python切片的妙用

列表元素循环移位中Python切片的妙用

作者头像
Python小屋屋主
发布2018-04-16 15:38:09
5.6K0
发布2018-04-16 15:38:09
举报
文章被收录于专栏:Python小屋

之前有个文章中介绍了列表循环移位的3中方法,原文请见:Python序列循环移位的3种方法

其中第二种方法虽然更直接地翻译了题目的要求,但是显得还是有点啰嗦,如果充分利用Python中的切片技术,可以写成下面更简洁的形式:

>>> def demo(lst, k):

x = lst[k-1::-1]

y = lst[:k-1:-1]

return list(reversed(x+y))

#测试用的列表

>>> lst = list(range(20))

#循环左移3位

>>> demo(lst, 3)

[3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 0, 1, 2]

#循环左移5位

>>> demo(lst, 5)

[5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 0, 1, 2, 3, 4]

#循环右移3位

>>> demo(lst, -3)

[17, 18, 19, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16]

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2016-10-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Python小屋 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档