При вызове аргумент функции выдает ошибку
number_served числового типа данных. При попытке его вывести с помощью new_restaurant.number_served() выдает ошибку, что невозможно вызвать int обьект.
class Restaurant:
"""Create easy restaurant model"""
def __init__(self, restaurant_name, cuisine_type):
"""Create attributes"""
self.restaurant_name = restaurant_name
self.cuisine_type = cuisine_type
self.number_served = 0
def describe_restaurant(self):
"""Describe restaurant"""
print(f"\nRestaurant name: {self.restaurant_name}.")
print(f"Cuisine type: {self.cuisine_type}")
def open_restaurant(self):
"""Say about restaurant open"""
print(f"Restaurant {self.restaurant_name} status: open!")
def closed_restaurant(self):
"""Say about restourant closed"""
print(f"Restaurant {self.restaurant_name} status: closed!")
def set_number_served(self, number):
"""Change number served"""
self.number_served = (number)
def incriment_number_served(self, number):
"""Incriment number served"""
self.number_served += number
new_restaurant = Restaurant("Atomix", "Chinese")
new_restaurant.describe_restaurant()
new_restaurant.set_number_served(4)
new_restaurant.number_served()
Ответы (1 шт):
Автор решения: elderberry17
→ Ссылка
Я полагаю, Вы пытаетесь обратиться к аттрибуту класса под названием number_served. Однако Вы ставите (), которые испольуются для вызова методов класса. Код получает четверку после обращения к new_restaurant.number_served, а затем пытается "вызвать метод", но тип данных int not callable (не вызываемый), поэтому код падает. Чтобы решить проблему достаточно исправить последнюю строчку:
print(new_restaurant.number_served)