Python 基于继承的卡片拾取算法
我只是在学习python,我编写了这段代码,让我可以创建一张卡片。这样,当我输入数字时,它会吐出卡片的名称Python 基于继承的卡片拾取算法,python,python-2.7,Python,Python 2.7,我只是在学习python,我编写了这段代码,让我可以创建一张卡片。这样,当我输入数字时,它会吐出卡片的名称 class Card(object): """ Represents a standard playing card.""" def __int__(self, suit=0, rank=2): self.suit = suit self.rank = rank suit_names = ['Clubs', 'Diamonds',
class Card(object):
""" Represents a standard playing card."""
def __int__(self, suit=0, rank=2):
self.suit = suit
self.rank = rank
suit_names = ['Clubs', 'Diamonds', 'Hearts', 'Spades']
rank_names = [None, 'Ace', '2', '3', '4', '5', '6', '7', '8', '9', '10', 'Jack', 'Queen', 'King']
def __str__(self):
return '%s of %s' % (Card.rank_names[self.rank], Card.suit_names[self.suit])
# Here is the legend for the cards: Spades -> 3 Hearts -> 2 Diamonds -> 1 Clubs -> 0
# Jack -> 11 Queen -> 12 King -> 13
Card(2, 11)
现在输出应该是“红桃杰克”,因为杰克=11,黑桃=2
但是我得到了这个错误:
TypeError:object()不接受任何参数[在0.0秒内完成,退出代码为1] 但是
Card
在第一行定义了object,所以我不知道我做错了什么
有什么建议吗
\uuuuu init\uuuuuu
而不是\uuuu int\uuuuu
\uuuu init\uuuu
中的代码,因此您不应该期望在屏幕上看到任何东西\uuuu str\uuuu
中输入的代码是正确的,但它在两种情况下执行
a。如果你直接调用它,Card(2,11)。\uu str\uuuu()
b。当被print
(语句或函数?)调用时,打印卡(2,11)
card = Cards(2,11)
print card
试试
\uuuuu init\uuuuuu
而不是\uuuu int\uuuuuuu
这是\uuuuuuu init\uuuuuuu
,30'年前蕾妮告诉过你同样的事情