白客小李666 2022-10-15 16:55 采纳率: 75%
浏览 13
已结题

python类报错,大家看看怎么办

又错了啊

class Restaurant:
    """餐馆"""
    def __init__(self, restaurant_name, cuisine_name):
        """初始化"""
        self.restaruant_name= restaurant_name
        self.cuisine_name= cuisine_name
    def describe_restaurant():
        print(f"\n{restaurant_name} is very big and very good!")
        print(f"\nthere are lots of foods there,like {cuisine_name} ")
    def open_restaurant():
        print(f"\n {restaurant_name} is opening!")
restaurant=Restaurant("BBQ","roast fish")
restaurant.describe_restaurant()
restaurant.open_restaurant()

请大家看看,我第二次使用类
报错代码:


  Message=describe_restaurant() takes 0 positional arguments but 1 was given
  Source=D:\小李\python\《Python编程从入门到实践第二版》练习\第一部分\第九章\第一个class程序\第一个class程序\第一个class程序.py
  StackTrace:
  File "D:\小李\python\《Python编程从入门到实践第二版》练习\第一部分\第九章\第一个class程序\第一个class程序\第一个class程序.py", line 38, in <module> (Current frame)
    restaurant.describe_restaurant()



  • 写回答

1条回答 默认 最新

  • Ubabi_? 2022-10-15 17:11
    关注

    def describe_restaurant(self):
    def open_restaurant(self):
    python我也很少用,不过我记得python类的成员函数定义的第一个参数应该要写self,使用还是像你现在这样,现在的报错信息上看应该就是你在调用函数的时候默认传了这个self参数,但是你的定义中没有这个参数,所以报错了,恩,应该是这样

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 10月23日
  • 已采纳回答 10月15日
  • 创建了问题 10月15日