Python - sortowanie linii

Często musimy sortować zawartość pliku do analizy. Na przykład chcemy, aby zdania napisane przez różnych uczniów były ułożone w kolejności alfabetycznej ich imion. Będzie to wymagało sortowania nie tylko według pierwszego znaku wiersza, ale także wszystkich znaków zaczynających się od lewej. W poniższym programie najpierw odczytujemy wiersze z pliku, a następnie drukujemy je za pomocą funkcji sortowania, która jest częścią standardowej biblioteki Pythona.

Drukowanie pliku

FileName = ("path\poem.txt")
data=file(FileName).readlines()
for i in range(len(data)):
   print data[i]

Po uruchomieniu powyższego programu otrzymujemy następujące dane wyjściowe -

Summer is here.
Sky is bright.
Birds are gone.
Nests are empty.
Where is Rain?

Sortowanie wierszy w pliku

Teraz zastosujemy funkcję sortowania przed wydrukowaniem zawartości pliku. wiersze są sortowane zgodnie z pierwszym alfabetem od lewej.

FileName = ("path\poem.txt")
data=file(FileName).readlines()
data.sort()
for i in range(len(data)):
    print data[i]

Po uruchomieniu powyższego programu otrzymujemy następujące dane wyjściowe -

Birds are gone.
Nests are empty.
Sky is bright.
Summer is here.
Where is Rain?