gpt4 book ai didi

python - 创建一副纸牌的最佳方法是什么?

转载 作者:太空狗 更新时间:2023-10-30 00:22:10 25 4
gpt4 key购买 nike

我正在考虑为纸牌游戏制作一副纸牌。我可以列出所有牌(我不太关心花色),但我想知道是否有更简单的方法来做到这一点。

cards = ['1','1','1','1'....]

我肯定您可以创建一个 for 循环来创建 4 张具有相同值的卡片并将其添加到列表中,但我想知道这是否是最佳解决方案。我还不够先进,无法了解或创建一个 Class,我已经看到它作为其他解决方案提供,但我愿意接受解释。

我已经制作了一个定义卡片值的字典。

最佳答案

我向您推荐一个具有基本类用法的解决方案。

首先,让我们制作一个Card类:

class Card:
def __init__(self, value, color):
self.value = value
self.color = color

然后,让我们列一个颜色列表:

colors = ['heart', 'diamonds', 'spades', 'clubs']

最后,让我们用列表理解来构建你的套牌:

deck = [Card(value, color) for value in range(1, 14) for color in colors]

Card class 只是一个包装器,只是操作卡片而不是元组,感觉更自然。

在当前状态下,它几乎等同于重命名 tuple类型...基本上,它只包含一个构造函数,__init__ , 设置实例的属性。

所以当我调用 Card(value, color)在列表理解中,例如 Card(11, 'spades') , Card 的新实例类被创建,它有它的 value属性设置为 11 , 及其 color属性设置为 'spades' .

我建议您阅读一些有关 OOP 的教程,以深入了解这些概念。


现在,您可以尝试改进这个想法,例如使用更详细的 values列表而不是 range(1, 14) :

values = ['ace', '2', ..., 'king']

关于python - 创建一副纸牌的最佳方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41970795/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com