首页 > 解决方案 > 显示从 500 个随机数字池中选择 x 数字的次数

问题描述

我想从标准的 52 张牌中随机挑选 500 张牌,并显示方块 A 被挑选了多少次。我不知道如何循环它并让它随机挑选 500 张卡片。我所尝试的只是导致同一张牌被选中 500 次。这是我目前拥有的:

import random

card_number = random.randint(0,52)
card_value = card_number % 13
card_suit = card_number // 13
ace = 0
print(card_value, card_suit)

if card_value == 0:
    card_value = "A"
if card_suit == 0:
    card_suit = "♥"
if card_value == 1:
    card_value = "K"
if card_suit == 1:
    card_suit = "♠"
if card_value == 12:
    card_value = "Q"
if card_suit == 2:
    card_suit = "♦"
if card_value == 11:
    card_value = "J"
if card_suit == 3:
    card_suit = "♣"
if card_value == 0 and card_suit == 2:
    ace = ace + 1
card = str(card_value) + str(card_suit)
print(card)
    
print("The Ace of Diamonds has appeared", ace , "times")

标签: python

解决方案


如果您的重点只是钻石 A,我想您实际上并不需要所有这些条件!您的代码可以修改如下:

import random
ace = 0
for i in range(500):
  card_number = random.randint(0,52)
  card_value = card_number % 13
  card_suit = card_number // 13
  
  if card_value == 0 and card_suit == 2: #This is where the main Ace of Diamonds check is happening
      ace = ace + 1
print("The Ace of Diamonds has appeared", ace , "times")

推荐阅读