W tym programie nauczysz się tasować talię kart za pomocą modułu losowego.
Aby zrozumieć ten przykład, powinieneś znać następujące tematy programowania w Pythonie:
- Python for Loop
- Moduły Pythona
- Moduł losowy Pythona
- Wbudowane funkcje programowania w Pythonie
Kod źródłowy
# Python program to shuffle a deck of card # importing modules import itertools, random # make a deck of cards deck = list(itertools.product(range(1,14),('Spade','Heart','Diamond','Club'))) # shuffle the cards random.shuffle(deck) # draw five cards print("You got:") for i in range(5): print(deck(i)(0), "of", deck(i)(1))
Wynik
Otrzymałeś: 5 z Serca 1 z Serca 8 z Pik 12 z Pik 4 z Pik
Uwaga: uruchom program ponownie, aby wymieszać karty.
W programie wykorzystaliśmy product()
funkcję w itertools
module do stworzenia talii kart. Ta funkcja wykonuje iloczyn kartezjański dwóch sekwencji.
Dwie sekwencje to numery od 1 do 13 i cztery kolory. W sumie mamy w talii 13 * 4 = 52 przedmioty, z każdą kartą jako krotką. Na przykład,
deck(0) = (1, 'Spade')
Nasza talia jest uporządkowana, więc tasujemy ją za pomocą funkcji shuffle()
w random
module.
Na koniec rysujemy pierwsze pięć kart i wyświetlamy je użytkownikowi. Za każdym razem, gdy uruchomisz ten program, otrzymamy inny wynik, jak pokazano na naszych dwóch wyjściach.
Tutaj użyliśmy standardowe moduły itertools
i random
że pochodzi z Python.