Ich versuche herauszufinden, was ich hier mit meinem Code falsch mache. Ich habe versucht, den zweiten Teil zu ändern, indem ich alles nach # der Hauptfunktion beseitige. Gedanken?Lokale Pythonvariable, auf die vor der Zuweisung verwiesen wird
bekomme ich folgende Fehler
Traceback (most recent call last): File "file", line 1, in import petspgm File "file", line 39, in main() File "file", line 34, in main print('Pet Name: ', pets.get_pet_name) builtins.UnboundLocalError: local variable 'pets' referenced before assignment –
import petspgm
def main():
#Get a list of pet objects.
pets = make_list()
#Display the data in the list.
print('Here is the data you entered: ')
display_list(pets)
#This function gets data from the user for 3 pets. It returns a list of pet
#objects containing the data.
def make_list():
#Create an
pet_list = []
#Add three pet objects to the list
print('Enter the data for 3 pets.')
for count in range(1, 3):
#Get the pet data
print("Pet number " + str(count) + ":")
pet_name = input("Enter your pet's name: ")
pet_type = input("Enter the type of pet: ")
pet_age = float(input("Enter the pet's age: "))
#Create a new PetData object in memory and assign it to the pet variable.
pet = petspgm.PetData(pet_name, pet_type, pet_age)
#Add the object to the list.
pet_list.append(pet)
#Return the list.
return pet_list
#This function accepts a list containing PetData objects as an argument and
def pet_list():
#displays the data stored in each object.
display_list(pet_list)
for item in pet_list:
print("Pet's name is: " + item.get_pet_name())
print("Pet's type is : " + item.get_pet_type())
print("Pet's age is : " + item.get_pet__age())
#Call the main function
main()
Hier wird die andere Hälfte auf den Code ist:
class PetData(object):
def __init__(self, name, animal_type, age):
self.__pet_name = pet_name
self.__pet_type = pet_type
self.__pet_age = pet_age
def set_name(self, name):
self.__pet_name = pet_name
def set_type(self, animal_type):
self.__pet_type = pet_type
def set_age(self, age):
self.__pet_age = pet_age
def get_name(self):
return self.__pet_name
def get_animal_type(self):
return self.__pet_type
def get_age(self):
return self.__pet_age
# The main function
def main():
# Prompt user to enter name, type, and age of pet
name = input('What is the name of the pet: ')
animal_type = input('What type of pet is it: ')
age = int(input('How old is your pet: '))
print('This will be added to the records. ')
print('Here is the data you entered:')
print('Pet Name: ', pets.get_pet_name)
print('Animal Type: ', pets.get_pet_type)
print('Age: ', pets.get_pet_age)
pets = Pet(name, animal_type, age)
main()
Bitte geben Sie weitere Details. Was läuft mit deinem Code falsch? Passiert etwas, von dem du erwartest, dass es nicht passiert? Ist etwas, von dem Sie erwarten, dass es nicht passiert? Be specific http://stackoverflow.com/help/how-to-ask – Hamms
Traceback (letzter Aufruf zuletzt): Datei "C: \ Benutzer \ BakerFamily \ Dokumente \ Vince \ LCC \ CITP 110 \ BakerVPR9.py", Zeile 1, in import petspgm Datei "C: \ Benutzer \ BakerFamily \ Dokumente \ Vince \ LCC \ CITP 110 \ petspgm.py", Zeile 39, in main() Datei „C: \ Benutzer \ BakerFamily \ Dokumente \ Vince \ LCC \ CITP 110 \ petswpg.py ", Zeile 34, im Hauptverzeichnis print ('Tiername:', pets.get_pet_name) builtins.UnboundLocalError: lokale Variable 'pets' referenziert vor Aufgabe –
bakervin730
Bitte aktualisieren Sie Ihre Originalfrage mit diesen Daten – Hamms