Napisz funkcje która posortuje po numerach albumów liste rekordów o strukturze (”Imie”, ”Nazwisko”,
numer_albumu). Do wykonania zadania nalezy uzyc wbudowanej funkcji sorted z uzyciem argumentu key.
Listing 30: Przykład do zadania 11.
1 >>> studenci = [
2 ... (’Jan’, ’Kowalski’, 3512),
3 ... (’Jan’, ’Kowalski’, 1243),
4 ... (’Jan’, ’Kowalski’, 2536),
5 ... ]
6 >>> sortuj(studenci)
7 [(’Jan’, ’Kowalski’, 1243), (’Jan’, ’Kowalski’, 2536), (’Jan’, ’Kowalski’, 3512)]



Odpowiedź :

Mrfix

Dodałem jeszcze paru Kowalskich.

<code>

def kluczSortowania(x):

   return x[2]

def sortuj(l):

   for i in l:

       return sorted(l, key=kluczSortowania)

studenci = [

   ('Jan', 'Kowalski', 3512),

   ('Jan', 'Kowalski', 1243),

   ('Jan', 'Kowalski', 2536),

   ('Jan', 'Kowalski', 7231),

   ('Jan', 'Kowalski', 6031),

   ('Jan', 'Kowalski', 5811)

]

listaPosortowana = sortuj(studenci)

for student in listaPosortowana:

   print(student)

</code>

Działanie:

>python.exe simple1.py

('Jan', 'Kowalski', 1243)

('Jan', 'Kowalski', 2536)

('Jan', 'Kowalski', 3512)

('Jan', 'Kowalski', 5811)

('Jan', 'Kowalski', 6031)

('Jan', 'Kowalski', 7231)

Pozdrawiam