98
Kapitola 6 Proměnné
Výpis 6.3: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29
Současné přiřazení skupiny hodnot proměnným
>>> a = 1; b = 2 >>> a 1 >>> a, b (1, 2) >>> x = y = z = 123 >>> x, y, z (123, 123, 123) >>> x, y, z = 10, 20, 30 >>> x, y, z (10, 20, 30) >>> a, b, c = 11, 22 Traceback (most recent call last): File "<pyshell#8>", line 1, in <module> a, b, c = 11, 22 ValueError: not enough values to unpack (expected 3, got 2) >>> a, b, c = 11, 22, 33, 44 Traceback (most recent call last): File "<pyshell#10>", line 1, in <module> a, b, c = 11, 22, 33, 44 ValueError: too many values to unpack (expected 3) >>> a, b, c Traceback (most recent call last): File "<pyshell#11>", line 1, in <module> a, b, c NameError: name 'c' is not defined >>> a, b (1, 2) >>>
Zadáním několika hodnot oddělených čárkami vytvoříte objekt označovaný jako n-tice (anglicky tuple). Ten se pak zobrazuje jako sada čárkami oddělených hodnot uzavřená v kulatých závorkách. Vytvoření tohoto objektu nám však nebrání v tom, abychom pracovali s jednotlivými hodnotami samostatně. S n-ticemi se podrobněji seznámíme v kapitole 18 N-tice na straně 261.
Obdobně můžeme požádat o vypsání hodnot skupiny proměnných. Stačí napsat jejich názvy oddělené čárkami, jak je naznačeno na řádcích 4, 7 a 10. Nevýhodou posledního způsobu zadávání hodnot je, že je trochu méně přehledný a zejména při zadávání většího počtu hodnot je náchylný k zadání špatných hodnot. Je-li zadaných hodnot méně, než je požadováno (řádek 12), vypíše interpret chybové hlášení, v němž oznámí očekávaný a zadaný počet hodnot (řádek 16). Jak ukazuje reakce na příkaz na řádku 17, překladači se nebude líbit ani to, když zadáte hodnot více, protože ty přebytečné nebude mít kam uložit. V obou případech ohlásí chybu překladu a nepřiřadí nic. 68_Python_3,10_ZLOM.doc; verze 1.03.8814_2021-08-10_út_17-05
Strana 98 z 585 Ukázka elektronické knihy, UID: KOS504617