Сортировка выбора Python

Вопрос. Предполагается, что код должен взять файл (который содержит одно целочисленное значение для каждой строки), распечатать (unsorted) целочисленные значения, отсортировать их, а затем распечатать отсортированные значения.

Есть ли что-то, что не выглядит правильным? Я знаю, что могу проверить его, и я проверил selectionSort, который работал нормально. Но я не знаю, как я могу проверить, успешно ли он принимает файл и что он должен делать.

спасибо

filename=input('Enter file path:')
file = open(filename, 'r')
alist = [int(line) for line in file.readlines()]
print(alist)

def selectionSort(alist):
 for index in range(0, len(alist)):
 ismall = index
 for i in range(index,len(alist)):
 if alist[ismall] > alist[i]:
 ismall = i
 alist[index], alist[ismall] = alist[ismall], alist[index]
 return alist
2 ответа

Ваш выбор сортировки кажется правильным, но перед тем, как у него возникли проблемы:

(Я предполагаю, что это Python 2.X, если он не игнорирует мой ответ)

Исправленный код:

filename=raw_input('Enter file path:')
file = open(filename, 'r')
alist = [int(line.strip()) for line in file.readlines()]
print(alist)


измените свою 3-ю строку на

alist = [int(line.strip()) for line in file.readlines()]

Из

alist = [int(line) for line in file.readlines()]

licensed under cc by-sa 3.0 with attribution.