【发布时间】:2021-05-25 08:42:24
【问题描述】:
class Deck:
def __init__(self):
self.suits = ['S', 'C', 'H', 'D']
self.nums = [2, 3, 4, 5, 6, 7, 8, 9, 10, 'J', 'Q', 'K', 'A']
self.deck = []
def make_deck(self):
self.deck = [f"{j}{i}" for j in self.nums for i in self.suits]
return self.deck
def pop_deck(self):
for i in range(3):
self.deck.pop(0) # gah don't do pop(i), do pop(1)
return self.deck
full_deck = Deck()
print(full_deck.make_deck())
print(full_deck.pop_deck())
class CardDistribution(Deck):
def updated_deck(self):
return self.deck
d = CardDistribution
print(d.updated_deck())
Traceback(最近一次调用最后一次): 文件“/Users/fatimah/PycharmProjects/classes/blackjack.py”,第 37 行,在 打印(d.updated_deck()) TypeError: updated_deck() 缺少 1 个必需的位置参数:'self'
【问题讨论】:
-
缺少
()在线d = CardDistribution? -
我正在尝试编辑我的代码以打印更新后的卡片组,但它引发了“自我”错误——不知道为什么
-
@Ruan 成功了,谢谢!
标签: python class inheritance