Hello world! I obviously don't understand something important and basic, but I am having trouble figuring it out myself... I am running python v3.2.2 on a Win XP machine.
My code: import card_model import random class Pile: """An Object reperesenting a list of 'Card' Objects: could be a hand, discard pile, tableau or anything really. Has a display_type that is used to clarify what kind of display to use, and .deal(cards[] , new_pile(Pile Object)) and .shuffle() methods.""" DISPLAY_TYPES = ["STACK", "FAN", "ACCORDION", "CASCADE"] def __init__(self, cards = [], display_type = "STACK"): self.cards = cards self.display_type = display_type def __str__(self): return_string = "" for i in self.cards: return_string = return_string + str(i) + "\n" return_string = return_string + str(self.display_type) return return_string def shuffle(self): random.shuffle(self.cards) def add(self, card_list): for i in card_list: self.cards.append(i) def deal(self, number_of_cards, position = 0): """Deletes the number of cards out of the pile, starting from position (default is the top) and returns that list of cards, for communication with other piles' .add methods.""" dealt_list = [] try: for i in range(number_of_cards): dealt_list.append(self.cards[position]) del self.cards[position] return(dealt_list) except IndexError: print("Error, out of cards!") return(None) I had been testing it with single objects favorably, but when I instantiate two Pile objects, methods like .add or .shuffle affect all of the Pile objects in memory. At first I thought the objects were all initializing to the same space in memory, but it wasn't true. If you need to see all my modules or my tester code, I will happily post. Thanks for helping a rank beginner! -Brian _______________________________________________ Tutor maillist - Tutor@python.org To unsubscribe or change subscription options: http://mail.python.org/mailman/listinfo/tutor