如何根据另一个阵列的条件用于一副扑克牌从一个阵列中排除一项?

问题描述

我有两个数组,一个用于卡片套装suit_list = ["Hearts","Diamonds","Clubs","Spades"],另一个用于值value_list = ["A","2","3","4","5","6","7","8","9","10","J","Q","K"]

我已经编写了用于随机选择卡的代码

基于此,对于选定的随机卡,例如2颗钻石,我想防止再次被选中。

我该如何解决这种方法?我最初的想法是在嵌套的for循环中使用条件方法,但似乎不起作用。

感谢您的帮助。

解决方法

与其考虑从游戏中移除一张牌,为什么不创建牌组,将其洗牌,然后当您需要牌组中的牌时,只需从阵列中取出下一张牌即可。

import random
import itertools

suit_list = ["Hearts","Diamonds","Clubs","Spades"]
value_list = ["A","2","3","4","5","6","7","8","9","10","J","Q","K"]

deck = list(itertools.product(suit_list,value_list))
random.shuffle(deck)

for card in deck:
    print(card)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...