【问题标题】:How to fix 'list index out of range' error in python如何修复python中的“列表索引超出范围”错误
【发布时间】:2019-06-24 19:30:14
【问题描述】:

我正在使用 excel 来存储用户名和分数。例如:

Ben,1 

Kim,9

Jeff,3

Bob,5

我想使用从最高到最低的分数对它们进行排序,但我不断收到此错误:

列表索引超出范围

我的代码:

import csv

import operator

sample = open("data.csv","r")

reader = csv.reader(sample,delimiter=',')

sort = sorted(reader,key=operator.itemgetter(1))

【问题讨论】:

  • 你在哪一行得到错误?在没有代码行参考的情况下发布错误并不是很有用。

标签: python excel csv sorting index-error


【解决方案1】:

由于空行而出现错误

import csv
import operator

result = []
with open(filename) as infile:
    reader = csv.reader(infile,delimiter=',')
    for line in reader:
        if line:                #Check if line is empty
            result.append(line)

print(sorted(result,key=operator.itemgetter(1)))

或使用filter

with open(filename) as infile:
    reader = csv.reader(infile,delimiter=',')
    print( sorted(filter(None, reader),key=operator.itemgetter(1)) )

【讨论】:

    猜你喜欢
    • 2019-10-13
    • 2019-10-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多