Una coppia
Ora usiamo una simulazione per stimare delle probabilità. Supponi di essere stato invitato a una partita di poker a casa di un amico. In questa variante del gioco, ti vengono distribuite cinque carte e vince il giocatore con la mano migliore. Userai una simulazione per stimare le probabilità di ottenere alcune mani. Lavoriamo sulla stima della probabilità di ottenere almeno una coppia. Una coppia si ha quando prendi due carte di semi diversi ma con lo stesso valore numerico (ad esempio, 2 di cuori, 2 di picche e altre 3 carte).
Al termine di questo esercizio saprai come usare una simulazione per calcolare le probabilità nei giochi di carte.
Questo esercizio fa parte del corso
Simulazione statistica in Python
Istruzioni dell'esercizio
- Distribuisci la mano: Nel ciclo for, mescola
deck_of_cards. Poi seleziona le prime 5 carte come tuahand. - Conta i valori numerici: Usa il metodo
get()per costruire il dizionariocards_in_hand, che conta le occorrenze di ciascunnumeric_valueinhand. - C'è una coppia? Verifica se il valore massimo in
cards_in_handè maggiore o uguale a2per vedere se hai almeno una coppia. In caso affermativo, incrementatwo_kind.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# Shuffle deck & count card occurrences in the hand
n_sims, two_kind = 10000, 0
for i in range(n_sims):
____
hand, cards_in_hand = deck_of_cards[0:5], {}
for [suite, numeric_value] in hand:
# Count occurrences of each numeric value
cards_in_hand[numeric_value] = cards_in_hand.____(numeric_value, 0) + 1
# Condition for getting at least 2 of a kind
if ____ >=2:
two_kind += 1
print("Probability of seeing at least two of a kind = {} ".format(two_kind/n_sims))