Question

Question: The code is supposed to take a file (that contains one integer value per line), print the (unsorted) integer values, sort them, and then print the sorted values.

Is there anything that doesn't look right? I know I could test it and I did test the selectionSort, which worked fine. But I don't really know how I could test whether it successfully takes the file and does what its supposed to do.

Thank you

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 

No correct solution

OTHER TIPS

Your selection sort seems to be correct but the part before it has issues:

(I am assuming this is Python 2.X, if it isn't ignore my answer)

The corrected code:

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

change your 3rd line to

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

From

alist = [int(line) for line in file.readlines()]
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top