python: Class error __main__.foo-Instanz auf 0 x

Ich Lerne python (mit VBA im hintergrund) durch den Bau eines black-jack-Spiel (ja, ich habe gefragt, eine Reihe von Fragen über blackjack als ein Beispiel).

Hier ist mein code:

import random

class DECK():
    def load_deck(self):
        suite = ('Spades', 'Hearts', 'Diamonds', 'Clubs')
        rank = ('2', '3', '4', '5', '6', '7', '8', '9', '10', "Jack", "Queen", "King", "Ace")
        full_deck = {}
        i = 0
        for s in suite:
            for r in rank:
                full_deck[i] = "%s of %s" % (r, s)
                i += 1
        return full_deck

    def pick_item(self, deck):   
        card_key = random.choice(deck.keys())  
        new_card = deck[card_key] 
        del deck[card_key]  
        return (deck, new_card)

    def missing_card(self, deck):
        temp_deck = DECK()
        print temp_deck

d1 = DECK()

deck1 = d1.load_deck()

deck1, card1 = d1.pick_item(deck1)

print card1

d1.missing_card(d1)

Hier ist, was ich in das terminal (Datei-namehand_c.py):

$ python hand_c.py
Ace of Clubs
<__main__.DECK instance at 0x10bb0d248>
$ 

Warum hat der eine Funktion der Arbeit pick_item, aber nicht die anderen missing_card?

Pro die erste Antwort, ich habe die Funktion definition:

    def missing_card(self, deck):
    deckC1 = DECK()
    temp_deck = deckC1.load_deck
    print temp_deck

Aber jetzt bekomme ich die folgende aus dem terminal:

$ python hand_c.py
Jack of Diamonds
<bound method DECK.load_deck of <__main__.DECK instance at 0x10500e248>>
$ 
  • Was meinst du mit "arbeiten"? Was erwarten Sie missing_card zu tun?
  • In der Nähe von Begriff, ich hatte gehofft, es würde drucken Sie das Wörterbuch. Schließlich möchte ich Sie zu finden, die fehlende Karten.
InformationsquelleAutor dwstein | 2012-08-09
Schreibe einen Kommentar