Stringek, listák és vektorok elemeit egyaránt rendezhetjük a sorted() függvénnyel; eredményként minden esetben (értelemszerűen rendezett) listát kapunk:
>>> str= '3742446162' >>> srt= sorted(str) >>> srt ['1', '2', '2', '3', '4', '4', '4', '6', '6', '7'] >>> lst= [37, 42, 44, 61, 62, ] >>> srt= sorted(lst) >>> srt [37, 42, 44, 61, 62] >>> tpl= (37, 42, 44, 61, 62, ) >>> srt= sorted(tpl) >>> srt [37, 42, 44, 61, 62]
Felhasználva a fentieket a Lottó című feladat megoldásához (inf_e_20050519_m_04):
print('1. feladat')
n1= int(input('Kérem az 52. hét 1. lottószámát: '))
n2= int(input('Kérem az 52. hét 2. lottószámát: '))
n3= int(input('Kérem az 52. hét 3. lottószámát: '))
n4= int(input('Kérem az 52. hét 4. lottószámát: '))
n5= int(input('Kérem az 52. hét 5. lottószámát: '))
print('2. feladat')
srt= sorted((n1, n2, n3, n4, n5))
print('Az 52. hét lottószámai emelkedő számsorrendben: ', srt[0], ', ', srt[1], ', ', srt[2], ', ', srt[3], ', ', srt[4], sep='')
Figyeljük meg a sorted() függvény zárójelei között megadott (további) zárójelpárt: így állítunk elő az öt számból egy vektort, melyet aztán egyetlen argumentumként kap meg a függvény.
Az adatok tárolását listával, a beolvasást, kiírást ciklussal végezve:
print('1. feladat')
lst= []
for i in range(5):
lst+= [int(input('Kérem az 52. hét ' + str(i+1) + '. lottószámát: '))]
print('2. feladat')
srt= sorted((n1, n2, n3, n4, n5))
print('Az 52. hét lottószámai emelkedő számsorrendben:', end=' ')
for n in srt[:-1]:
print(n, end=', ')
print(srt[-1])
A kiírás során ügyelnünk kellett az egy alapú számozásra, s mivel az input utasítás csak egy argumentumot kaphat, a sorszám típuskonverziója után összefűztünk három kiírandó stringet. Végül vegyük észre, hogy az utolsó elemet külön kellett kiírnunk, hogy a korábbiak után álló vessző ebben az esetben már ne jelenjék meg.