Как исправить ошибку 'list index out of range' в python - PullRequest
0 голосов
/ 31 января 2019

Я использую 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))

1 Ответ

0 голосов
/ 31 января 2019

Вы получаете сообщение об ошибке из-за пустой строки

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)) )
...