.__init__() takes 3 positional arguments but 4 were given错误

#原代码如下:

class Restaurant():
    """模拟餐厅"""
    def __init__(self,name,type):
        """初始化属性name和age"""
        self.name = name
        self.type = type
        self.number_served = 0
    def describe_restaurant(self):
        """介绍restaurant的信息"""
        print("restaurant的名字是"+self.name+",类型是"+self.type)
    def open_restaurant(self):
        """表示餐厅正在营业"""
        print(self.name+"正在营业中。")
    def set_number_served(self,people):
        self.number_served = people
    def increment_number_served(self,increment_of_population):
        self.number_served = self.number_served + increment_of_population
class IceCreamStand(Restaurant):
    def __init__(self,name,type):
        super().__init__(self,name,type)
        self.flavors = []
    def add_the_flavor(self,*new_flavor):
        self.flavors.append(*new_flavor)
    def print_the_flavors(self):
        print("本店有以下口味冰淇淋:")
        for flavor in self.flavors:
            print(flavor+"口味冰淇淋")
yellin = IceCreamStand("名字","种类")
yellin.add_the_flavor("草莓","香蕉","巧克力")
yellin.print_the_flavors()

#结果是报错

>>> yellin = IceCreamStand("名字","种类")
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "<stdin>", line 3, in __init__
TypeError: Restaurant.__init__() takes 3 positional arguments but 4 were given

请问一下问题在于何处?多谢。

self.flavors.append(*new_flavor)
-->>
self.flavors.extend(new_flavor)