条件是正确的,类仍然没有追加/删除 - Python

时间:2014-05-25 01:00:20

标签: python design-patterns append

我正在编写我自己的Lucky 9版本(当我遇到这个问题时,每个玩家获得2张牌并被问到他们是否想要另一张牌,他们的得分相当于(值的总和)%10)。 每个玩家只有在有足够的钱投注的情况下才能继续,并且如果他们不再有足够的钱,他们将被从self.playing的游戏列表class game()中取出。 1}}并移至self.playable。但是,即使满足要移动的条件,也不能正确处理所有类。

所以这是我遇到问题的部分:

self.observer.notifyListeners(self.playing, self.deck.cards, self) '''yeah, i used an observer design pattern'''

然后重定向到此部分:

def notifyListeners(self, x, kards, system):
            #These are all in an observer class and I pass class game as "system" as the parameter
    x.sort(key = lambda x: x.points)
    for y in x:
        print y.name, y.points
        for z in y.cards:
            self.pastcards.append(z)
        y.cards = []

    winners = []
    winners.append(x[len(x)-1])
    for y in x:
        if y.points == winners[0].points and y is not x[len(x)-1]:
            winners.append(y)

    self.money = self.money/len(winners)

    for y in winners:
        y.handlemove(self.money)
        print y.name, " wins."

    for y in x:
        if y.name == "Streaky" and y not in winnders:
            y.wins = 0
        else:
            pass


    for y in x:
        print y.name, ": ", y.money

    print len(self.pastcards)
    print "Cards left: ", len(kards)

    for y in x:
        if y.money < 100:
            y.isEligible = False

    for y in x:
        if y.isEligible == False:
            system.playable.append(y)
            self.removelisteners(y)
            system.playing.remove(y)

            for y in x:
                    print y.name, y.money

我将它们打印出来以便我可以看到谁离开了,但有时候,<100钱的玩家仍然是该列表的一部分。有点让我回到这里。任何帮助将不胜感激。

感谢。

0 个答案:

没有答案