【发布时间】:2021-09-24 08:00:06
【问题描述】:
我正在使用秘密从先前定义的列表中获取两个随机变量。我需要连续做两次。第二次,我需要程序从同一个列表中进行选择,除了选择第一次返回的两个。
num_to_select = 2
unassigned_cards = [2,3,4,5,6,7,8,9,10,10,10,10,'ACE']
draw_cards = 4*unassigned_cards
dealers_cards = secure_random.sample(draw_cards, num_to_select)
draw_cards.remove(dealers_cards)()
players_cards = secure_random.sample(draw_cards, num_to_select)
出现此错误消息是可以理解的,因为我已要求它删除原始列表中不存在的对象。
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-2-0d34b9c572c9> in <module>
1 dealers_cards = secure_random.sample(draw_cards, num_to_select)
----> 2 draw_cards.remove(dealers_cards)()
3 players_cards = secure_random.sample(draw_cards, num_to_select)
4
5 print('Dealer drew', dealers_cards,'for a total of', sum(dealers_cards))
ValueError: list.remove(x): x not in list
为了澄清,这是一场纸牌游戏,所以我在第三行代码中将列表乘以 4 以表示四套花色,因此从列表中删除“庄家的牌”只会降低抽奖的可能性一个特定的数字,而不是让它完全不可能。
请解释我在哪里出错了。
【问题讨论】: