【发布时间】:2022-01-15 19:47:13
【问题描述】:
我的问题是创建一个一次生成一种卡片的函数。例如card_dealer() 仅输出任何一种组合,例如10S。
我的尝试是
def card_dealer():
rank = ['2','3','4','5','6','7','8','9','10','J','Q','K','A']
suit = ['S','C','H','D']
list3=[]
num=0
for i in rank[num]:
for j in suit[num]:
list3.append(f'{i}{j}')
num+=1
yield list3
next(card_dealer())
但是,当我继续运行 next(card_dealer()) 时,这只输出相同的一个组合:
['2S']
我将如何做到这一点,以便当我运行 next(card_dealer()) 时,我会得到下一个组合,例如2C。我曾考虑过使用 import random 来随机化而不是按顺序输出组合,但那是另一天!
我尝试过此代码的不同组合,例如在不同的缩进中移动产量,但它没有给出我想要的具体结果。
【问题讨论】:
-
list3和num是不必要的。