Cathy James wrote:
I am almost there, but I need a little help:

I would like to

a) print my dogs in the format  index. name: breed as follows:

0. Mimi:Poodle
1.Sunny: Beagle
2. Bunny: German Shepard
I am getting

(0, ('Mimi', 'Poodle')) . Mimi : Poodle instead-what have I done wrong?

b) I would like to append to my list, but my line dogs.dogAppend() is
giving a TypeError:

for i in enumerate (self.dogAppend()):
TypeError: 'list' object is not callable

Any help?

#MY CODE BELOW:

import sys
class Dog():
    def __init__(self, name, breed):
        self.name = name
        self.breed = breed

    def dogAppend(self):
        self.dogAppend = []
        self.dogAppend.append((self.name,self.breed))
        return self.dogAppend


    def display (self):
        for i in enumerate (self.dogAppend()):
            print (i,".",  self.name, ": " + self.breed)

if __name__ == "__main__":
    dogs = Dog(name=input (" Enter Dog Name: "), breed=input ("Enter
Dog Breed: "))
    while not dogs:
        print("Goodbye!!")
        sys.exit()
    else:
        #dogs.dogAppend()
        dogs.display()

From the looks of Dog it should only hold one animal, so I would drop dogAppend and use a normal list; I would also change display to __str__ and remove the enumerate portion (since it's only one animal):

8<----------------------------------------------------------------------
#python 3
class Dog():
    def __init__(self, name, breed):
        self.name = name
        self.breed = breed

    def __str__(self):
        return self.name + ": " + self.breed

if __name__ == "__main__":
    dogs = []
    while True:
        name=input ("Enter Dog Name: ").rstrip() # stupid newlines
        breed=input ("Enter Dog Breed: ").rstrip()
        if name and breed:
            dogs.append(Dog(name, breed))
            for i, dog in enumerate(dogs):
                print("%2i. %s" % (i, dog))
        else:
            print("good-bye")
            break
8<----------------------------------------------------------------------

~Ethan~
--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to