如何从列表中打印项目?

时间:2016-12-02 00:23:43

标签: python python-2.7

我正在尝试创建一个程序,使用类和方法来制作餐厅。通过建立一家餐馆,我的意思是说明他们的名字,他们所服务的食物类型以及何时开放。

我已经成功地做到了,但现在我正在尝试创建一个继承自其父类(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()

1 个答案:

答案 0 :(得分:2)

您可能希望使用.join()将列表合并为一个字符串。

即。

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

", ".join(flavor_options)

这将输出:

"Chocolate, Vanilla, Strawberry"