首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将变量与集合进行比较(以查看是否存在重复的变量),如果存在,如何删除它们并重复该过程?

如何将变量与集合进行比较(以查看是否存在重复的变量),如果存在,如何删除它们并重复该过程?
EN

Stack Overflow用户
提问于 2020-11-19 04:05:59
回答 2查看 51关注 0票数 0

我是新来的,所以我很抱歉这不是问问题的好方法.

这是我的密码:

代码语言:javascript
复制
import random
i = 0
#the numbers of the cards
numbers = ["A","2","3","4","5","6","7","8","9","10","Jack","Queen","King"]
#the suits of decks
suits = ["Spades","Hearts","Clubs","Diamonds"]
#empty list
used = []
#Generate random Number and Suit
while i != 5:
    number = random.choice(numbers)
    suit = random.choice(suits)
    print (number+" of "+suit)
    used.append(number + " of " + suit)
    i += 1

我试图实现的是让代码生成一系列的5张卡片(没有副本),然后打印那些.

但我不知道如何处理(和重复代码)重复的

我现在得到的是:

黑桃王,黑桃王,红桃皇后,红桃之王,黑桃王,红桃皇后,棒子A,红桃6

提前感谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-11-19 04:10:40

试试这个:

代码语言:javascript
复制
import itertools
import random
numbers = ["A","2","3","4","5","6","7","8","9","10","Jack","Queen","King"]
#the suits of decks 
suits = ["Spades","Hearts","Clubs","Diamonds"]
deck=list(itertools.product(numbers,suits))
random.shuffle(deck)
for i in range(5):
    print( deck[i][0],'of' ,deck[i][1])
票数 1
EN

Stack Overflow用户

发布于 2020-11-19 05:03:13

若要摆脱复制卡,请尝试按以下方式添加行:

代码语言:javascript
复制
# Generate random Number and Suit
while i != 5:
    number = random.choice(numbers)
    numbers.remove(number) ###
    suit = random.choice(suits)
    print(number + " of " + suit)
    used.append(number + " of " + suit)
    i += 1
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64905274

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档