类中出错takes no arguments

一、报错描述

TypeError: Restaurant() takes no arguments

二、出错根因:

__init__是一种特殊的方法,易错点:

1. "__"为双下划线,而非单下划线"_";

2. "init"的拼写。

附上源码:

class Restaurant():
    """餐馆的简单描述"""
    
    def __init__(self,restaurant_name,cuisine_type):
        """"初始化属性的name和type"""
        self.name=restaurant_name
        self.type=cuisine_type
        
    def describe_restaurant(self):
        """描述餐馆的name和type"""
        print("The type of "+self.name+"is "+self.type+'.')
        
    def open_restaurant(self):
        """描述餐馆正在营业"""
        print(self.name.title()+" is opening.")
        
the_restaurant=Restaurant('Jinling Hotel','5_stars')
the_restaurant.describe_restaurant()
the_restaurant.open_restaurant()

你可能感兴趣的:(Python)