zoukankan      html  css  js  c++  java
  • python中range函数与列表中删除元素

    一、range函数使用

      range(1,5)   代表从1到4(不包含5),结果为:1,2,3,4   ,默认步长为1  

      range(1,5,2)   结果为:1, 3  (同样不包含5) ,步长为2

      range(5,-1,-1)  反向输出,结果为:5,4,3,2,1,0 ,此时步长为-1,相当于每次减去1

    二、list列表删除元素注意事项

      for i in range(0,len(array)-1):

        if array[i]==array[i+1]:

          del array[i+1]

         分析:该方法进行删除的时候,每次删除的时候元素就少一个,但是一开始的range(0,len(array)-1)还是按最开始的元素长度去遍历,最终会报出列表越界的错误。

      正确方法如下  

      for i in range(len(array)-1,0,-1):

        if array[i]==array[i-1]:

          del array[i-1]

      倒序删除与正序删除的不同示意图如下

     总结:列表元素删除时,是索引大的元素向前靠,所以对于后面的索引元素没有任何影响,而倒序索引正是从大到小索引,所以删除当前的元素,对于后面小的未遍历的索引没有任何影响。

  • 相关阅读:
    Jira-dashboard
    SCQA 结构化表达案例:让开场白、讲故事精彩的结构
    outlook 2016 系列1--自动回复
    outlook 2016 系列1--如何将同一回复主题的邮件放在一起
    C++ 成员限定符
    TCP/IP 协议分层
    TCP之拥塞控制
    TCP之流量控制
    TCP之滑动窗口
    TCP中的定时器
  • 原文地址:https://www.cnblogs.com/gczr/p/6445985.html
Copyright © 2011-2022 走看看