Kom igångKom igång gratis

Ett par

Nu ska vi använda simulering för att uppskatta sannolikheter. Anta att du blivit inbjuden till ett pokerspel hemma hos en vän. I den här varianten av spelet får du fem kort, och spelaren med den bästa handen vinner. Du kommer att använda en simulering för att uppskatta sannolikheten att få vissa händer. Vi börjar med att uppskatta sannolikheten för att få minst ett par. Ett par innebär att du får två kort med olika färg men samma siffervärde (t.ex. hjärter 2, spader 2 och tre andra kort).

När du är klar med den här övningen vet du hur man använder simulering för att beräkna sannolikheter i kortspel.

Den här övningen är en del av kursen

Statistisk simulering i Python

Visa kurs

Övningsinstruktioner

  • Dela ut handen: I for-loopen blandar du deck_of_cards. Sedan väljer vi de första 5 korten som vår hand.
  • Räkna siffervärden: Använd metoden get() för att bygga upp ordboken cards_in_hand, som räknar hur många gånger varje numeric_value förekommer i hand.
  • Är det ett par? Kontrollera om det största värdet i cards_in_hand är lika med eller större än 2 för att se om vi har minst ett par. Om ja, ökar vi two_kind med ett.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# 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))
Redigera och kör kod