@@ -405,11 +405,31 @@ zavolej `append` pro všechny kombinace barev a hodnot:
405
405
``` python
406
406
balicek = []
407
407
for barva in ' ♠' , ' ♥' , ' ♦' , ' ♣' :
408
- for hodnota in list ( range ( 2 , 11 )) + [ ' J' , ' Q' , ' K' , ' A' ]:
409
- balicek.append(str ( hodnota) + barva)
408
+ for hodnota in [ ' 2 ' , ' 3 ' , ' 4 ' , ' 5 ' , ' 6 ' , ' 7 ' , ' 8 ' , ' 9 ' , ' 10 ' , ' J' , ' Q' , ' K' , ' A' ]:
409
+ balicek.append(hodnota + barva)
410
410
print (balicek)
411
411
```
412
412
413
+ > [ note] Jde to líp?
414
+ > Psát do programu výčet po sobě jdoucích čísel,
415
+ > ` '2', '3', '4', '5', '6', '7', '8', '9', '10' ` ,
416
+ > není ideální – na takovou otročinu přece máme počítače!
417
+ > Zkus čísla dostat pomocí ` range ` .
418
+ > Ale pozor, není to úplně přímočaré:
419
+ >
420
+ > * Jaké argumenty dáš funkci ` range ` , abys dostal{{a}} čísla od 2 do 10?
421
+ > * Funkce ` range ` vrací sekvenci, která ale není seznam.
422
+ > Abys ji mohl{{a}} spojit se seznamem ` ['J', 'Q', 'K', 'A'] ` , budeš ji muset
423
+ > na seznam převést: ` list(range(...)) `
424
+ > * Abys mohl{{a}} čísla z ` range ` připojit k řetězci jako ` ♠ ` , budeš muset
425
+ > každou hodnotu před použitím převést na řetězec: ` str(hodnota) ` .
426
+ >
427
+ > Bonus: Jaký je nejkratší zápis, kterým můžeš zadat seznam
428
+ > ` ['J', 'Q', 'K', 'A'] ` ?
429
+ >
430
+ > Řešení najdeš v textu o kousek níže.
431
+
432
+
413
433
## Seznamy a řetězce
414
434
415
435
Seznamy a řetězce jsou druhy * sekvencí* .
@@ -458,9 +478,12 @@ Seznam změní „na místě“ a nic nevrací (podobně jako metoda `sort`).
458
478
``` python
459
479
import random
460
480
481
+ ciselne_hodnoty = list (range (2 , 11 ))
482
+ pismenne_hodnoty = list (' JQKA' )
483
+
461
484
balicek = []
462
485
for barva in ' ♠' , ' ♥' , ' ♦' , ' ♣' :
463
- for hodnota in list ( range ( 2 , 11 )) + [ ' J ' , ' Q ' , ' K ' , ' A ' ] :
486
+ for hodnota in ciselne_hodnoty + pismenne_hodnoty :
464
487
balicek.append(str (hodnota) + barva)
465
488
print (balicek)
466
489
0 commit comments