【发布时间】:2021-04-05 11:10:05
【问题描述】:
我正在尝试用 Python 制作 Go Fish 纸牌游戏,但我在第一步中遇到了麻烦。每次抽牌时,我都希望它在手中寻找匹配,如果匹配则将两者都删除。本质上,“card”从牌组中弹出一张牌,“for”循环遍历手牌进行匹配。如果找到匹配项,则移除手中的牌,并且永远不会将牌添加到手牌中(真的消失了。)通过使用 dubugger,我发现脚本会自动将弹出的牌放入手牌中到达“for”循环。我有两个问题:为什么它会这样工作?我怎样才能做到这一点?谢谢!
附言我还注意到比较面部卡片很困难,我将其表示为“A”、“K”、“Q”和“J”。如果您有更好的解决方法,我愿意接受建议,否则我可以解决这个问题。
def draw_card(hand):
# Handles very first card drawn. Adds card if hand is empty
card = list.pop(cards)
print('card is',card)
for i in hand:
print('Hand is: ',hand)
if i == card:
print(i,card)
print('This value will be removed: ',i)
hand.remove(i)
else:
hand.append(card)
return hand
【问题讨论】: