2016-12-02 139 views
0

我想創建一個使用類和方法來創建餐廳的程序。通過製作一家餐廳,我的意思是說明他們的名字,他們所服務的食物類型以及何時開放。如何從列表中打印項目?

我已經成功完成了這項工作,但現在我正在嘗試創建一個繼承其父類(Restaurant)並創建子類(IceCreamStand)的冰淇淋攤。我的問題是,當我將冰淇淋口味列表存儲在一個屬性(flavor_options)中並打印出來時,它會打印帶有括號的列表。

我只是想打印正常句子格式的列表中的項目。任何幫助非常感謝,謝謝!

#!/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() 
+2

「」。加入(flavor_options) – Eric

+2

使用'」」。加入(self.flavor_options)',而不是'STR(...)' – mitoRibo

+0

非常感謝很多!它現在可以工作 –

回答

2

你會想要使用.join()將列表組合成一個單一的字符串。

I.E.

flavor_options = ['Chocolate','Vanilla','Strawberry'] 

", ".join(flavor_options) 

這將輸出:

"Chocolate, Vanilla, Strawberry" 
+0

非常感謝,它完成了這項工作 –