Ich versuche ein Programm zu erstellen, das Klassen und Methoden verwendet, um ein Restaurant zu machen. Mit einem Restaurant meine ich, dass es ihren Namen, die Art von Essen, die sie servieren, und wenn sie öffnen.Wie kann ich Objekte aus einer Liste drucken?
Ich habe das erfolgreich gemacht, aber jetzt versuche ich einen Eiscremestand zu erstellen, der von seiner Elternklasse erbt (Restaurant
) und eine Kinderklasse macht (IceCreamStand
). Mein Problem ist, dass, wenn ich die Liste der Eiscremearomen in einem Attribut (flavor_options
) speichere und es drucke, es die Liste mit den Klammern drumherum druckt.
Ich möchte nur die Elemente in der Liste in einem regulären Satzformat drucken. Jede Hilfe wird sehr geschätzt, danke!
#!/usr/bin/python
class Restaurant(object):
def __init__(self, restaurant_name, cuisine_type, rest_time):
self.restaurant_name = restaurant_name
self.cuisine_type = cuisine_type
self.rest_time = rest_time
self.number_served = 0
def describe_restaurant(self):
long_name = "The restaurant," + self.restaurant_name + ", " + "serves " + self.cuisine_type + " food"+ ". It opens at " + str(self.rest_time) + "am."
return long_name
def read_served(self):
print("There has been " + str(self.number_served) + " customers served here.")
def update_served(self, ppls):
self.number_served = ppls
if ppls >= self.number_served:
self.number_served = ppls # if the value of number_served either stays the same or increases, then set that value to ppls.
else:
print("You cannot change the record of the amount of people served.")
# if someone tries decreasing the amount of people that have been at the restaurant, then reject themm.
def increment_served(self, customers):
self.number_served += customers
class IceCreamStand(Restaurant):
def __init__(self, restaurant_name, cuisine_type, rest_time):
super(IceCreamStand, self).__init__(restaurant_name, cuisine_type, rest_time)
self.flavors = Flavors()
class Flavors():
def __init__(self, flavor_options = ["coconut", "strawberry", "chocolate", "vanilla", "mint chip"]):
self.flavor_options = flavor_options
def list_of_flavors(self):
print("The icecream flavors are: " + str(self.flavor_options))
icecreamstand = IceCreamStand(' Wutang CREAM', 'ice cream', 11)
print(icecreamstand.describe_restaurant())
icecreamstand.flavors.list_of_flavors()
restaurant = Restaurant(' Dingos', 'Australian', 10)
print(restaurant.describe_restaurant())
restaurant.update_served(200)
restaurant.read_served()
restaurant.increment_served(1)
restaurant.read_served()
"" .join (flavor_options) – Eric
Verwendung '““.join (self.flavor_options)' statt 'str (...)' – mitoRibo
Dank Menge! Es funktioniert jetzt –