最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

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

来源:懂视网 责编:小OO 时间:2020-11-27 14:22:14
文档

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): 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)。

下面为大家分享一篇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种方法

第一种方法:特点是直接、容易理解,缺点是速度慢,只能实现循环左移。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)。
推荐度:
标签: 方法 python 移位
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top