• Предмет: Информатика
  • Автор: laizzUnU
  • Вопрос задан 4 месяца назад

Python, задачка срочноо

Создать класс NoteBook, который содержит основные характеристики ноутбука (не менее трех характеристик). При реализации класса использовать конструктор, вывод информации об объектах класса оформить через метод __str__(). Создать несколько объектов класса NoteBook.
Используя собственную функцию comparison1 (функция находится ВНЕ класса) сравнить два ноутбука по любой из характеристик.

Используя собственную функцию comparison2 (функция находится ВНУТРИ класса) сравнить два ноутбука по любой из характеристик.

Ответы

Ответ дал: AeroSmach
1

def comparison1(notebook1, notebook2):

   # сравниваем два ноутбука по размеру экрана

   if notebook1.screen_size > notebook2.screen_size:

       return f"{notebook1} лучше, чем {notebook2}"

   elif notebook1.screen_size < notebook2.screen_size:

       return f"{notebook2} лучше, чем {notebook1}"

   else:

       return "Ноутбуки равны"

class NoteBook:

   def __init__(self, brand, model, screen_size, ram):

       self.brand = brand

       self.model = model

       self.screen_size = screen_size

       self.ram = ram

   def __str__(self):

       return f"{self.brand} {self.model} (размер экрана {self.screen_size}, объем ОЗУ {self.ram})"

   def comparison2(self, other):

       # сравниваем два ноутбука по объему ОЗУ

       if self.ram > other.ram:

           return f"{self} лучше, чем {other}"

       elif self.ram < other.ram:

           return f"{other} лучше, чем {self}"

       else:

           return "Ноутбуки равны"

# создаем несколько объектов класса NoteBook

notebook1 = NoteBook("Lenovo", "ThinkPad X1 Carbon", 14, 16)

notebook2 = NoteBook("Dell", "XPS 13", 13.3, 8)

notebook3 = NoteBook("Apple", "MacBook Air", 13.3, 8)

# сравниваем ноутбуки с помощью comparison1

print(comparison1(notebook1, notebook2)) # Lenovo ThinkPad X1 Carbon (размер экрана 14, объем ОЗУ 16) лучше, чем Dell XPS 13 (размер экрана 13.3, объем ОЗУ 8)

print(comparison1(notebook2, notebook3)) # Dell XPS 13 (размер экрана 13.3, объем ОЗУ 8) равен Apple MacBook Air (размер экрана 13.3, объем ОЗУ 8)

# сравниваем ноутбуки с помощью comparison2

print(notebook1.comparison2(notebook2)) # Lenovo ThinkPad X1 Carbon (размер экрана 14, объем ОЗУ 16) лучше, чем Dell XPS 13 (размер экрана 13.3, объем ОЗУ 8)

print(notebook2.comparison2(notebook3)) # Dell XPS 13 (размер экрана 13.3, объем ОЗУ 8) равен Apple MacBook Air (размер экрана 13.3, объем ОЗУ 8)

Вот вроде так.

Вас заинтересует