初学者到python语法错误

时间:2019-05-15 19:14:42

标签: python self

我是python的新手,正在尝试使用self重构代码。供参考,我正在尝试通过python制作一个简单的21点游戏。不管是谁,我都无法重构代码以将其分配给玩家,这样我就可以将其用于其他功能,例如发牌,命中和翻倍。

我最初使用此功能,但想对其进行更多重构以实现我的目标。

class FrenchDeck:
    ranks = [str(n) for n in range(2,11)] + list('JQKA')
    suits = 'spades diamonds clubs hearts'.split()

    def __init__(self):
        self._cards = [Card(rank,suit) for suit in self.suits for rank in self.ranks]

    def __len__(self):
        return len(self._cards)

    def __getitem__(self,position):
        return self._cards[position]

    def deal(self,n):
        return 
        for n in range(1,1+n):
            self.append(choice(deck))

...

def deal(n):

    for n in range(1,1+n):
        playerHand.append(choice(deck))
        dealerHand.append(choice(deck))


def deal(n):

    for n in range(1,1+n):
        self.append(choice(deck))

我包括了所有代码,并尝试将函数放入类中,但这没有用。我不断收到一个错误消息,指出在尝试这样调用时未定义事物:

playerHand = deal(2)

这是我遇到的错误:

playerHand = deal(2)追溯(最近一次通话最近):playerHand = Deal(2)的第1行,在交易self.append(choice(deck))NameError中的文件“”,第4行:名称“ self”未定义

也;如果有人对如何更好地使用python有很好的提示,将不胜感激! :)

0 个答案:

没有答案