zoukankan      html  css  js  c++  java
  • 转 Python-IndexError: list index out of range

    https://www.cnblogs.com/2bjiujiu/p/9063864.html

    Error:IndexError: list index out of range

    Where?

      对Python中有序序列进行按索引取值的时候,出现这个异常

    Why?

      对于有序序列: 字符串 str 、列表 list 、元组 tuple进行按索引取值的时候,默认范围为 0 ~ len(有序序列)-1,计数从0开始,而不是从1开始,最后一位索引则为总长度减去1。当然也可以使用 负数表示从倒数第几个,计数从-1开始,则对于有序序列,总体范围为 -len(有序序列) ~ len(有序序列)-1,如果输入的取值结果不在这个范围内,则报这个错

    Way?

      检查索引是否在 -len(有序序列) ~ len(有序序列)-1 范围内,修改正确

    错误代码:

    1
    2
    3
    4
    name = "beimenchuixue"
    students = ["beimenchuixue""boKeYuan""Python""Golang"]
    print(name[20])
    print(students[4])

     

    正确代码:

    1
    2
    3
    4
    name = "beimenchuixue"
    students = ["beimenchuixue""boKeYuan""Python""Golang"]
    print(name[3])
    print(students[3])

    ##########for 循环 遇到 IndexError:

    https://www.jianshu.com/p/f1b58ec12b72

    失败原因:爬虫在做xpath时候匹配到空值,粗心大意以为网页很简单,没仔细看,因为标识tr还有空值

    解决方法:加上try.....except 错误机制跳过tr空值

            try:
    
                #寻找tr下面的标识
    
                qihao = item.select('td strong')[0].text
    
                onewei = item.select('td div')[0].text
    
                twowei = item.select('td div')[1].text
    
                threewei = item.select('td div')[2].text
    
                fourwei = item.select('td div')[3].text
    
                fivewei = item.select('td div')[4].text
    
                sixwei = item.select('td div')[5].text
    
                sevenwei = item.select('td div')[6].text
    
                list = [qihao,onewei,twowei,threewei,fourwei,fivewei,sixwei,sevenwei]
    
                all_lists.append(list)
    
                print(list)
    
            except IndexError:
    
                pass
    

     

  • 相关阅读:
    DML和DQL语句
    MYSQL创建用户和授权方法(测试mysql5.7)
    安卓ViewPager中Button点击事件弹出Dialog
    安卓从popupwindow跳转到Activity页面
    Collect preferences failed, class java/lang/AutoCloseable not found in D:Program Files (x86)Androidandroid-sdkplatformsandroid-19android.jar
    安卓横屏布局设置
    C#控制台程序自动重启(检测是否连接网络)
    C++指针学习
    C++共享数据的保护
    C++结构体再学心得
  • 原文地址:https://www.cnblogs.com/feiyun8616/p/9755851.html
Copyright © 2011-2022 走看看