Перефразированное задание: Создайте класс с именем LampRow, который будет хранить состояние ряда из 8 лампочек в виде

  • 6
Перефразированное задание: Создайте класс с именем LampRow, который будет хранить состояние ряда из 8 лампочек в виде символьной строки. Цифра 0 будет представлять выключенную лампочку, а цифра 1 - включенную. Свойство state будет скрывать внутреннюю переменную _state, которая хранит состояние лампочек. При изменении значения state будет проверяться, что длина строки состояния равна 8; если это не так, то все значения будут изменены на нули. Метод show будет выводить состояние лампочек на экран, используя знак минус для выключенных лампочек и точку для включенных. Пример использования: lamps = LampRow() lamps.show() lamps.state = "10101010" print(lamps.state) lamps.show() 10101010
Георгий
29
Шаг 1: Создание класса LampRow
Определим класс LampRow с помощью ключевого слова "class".

python
class LampRow:


Шаг 2: Инициализация класса
Внутри класса определите метод __init__ для инициализации экземпляра класса и его свойств. В данном случае у нас есть только одно свойство - состояние лампочек. Внутри метода __init__ создайте свойство state и установите его значение равным переданной строке. Также создайте приватную переменную _state и присвойте ей значение свойства state.

python
def __init__(self, state):
self.state = state
self._state = state


Шаг 3: Проверка длины строки
В методе __init__ добавим проверку длины строки состояния. Если длина строки меньше 8 символов, то все значения будут изменены на нули.

python
def __init__(self, state):
if len(state) != 8:
state = "0" * 8
self.state = state
self._state = state


Шаг 4: Метод show
Добавим метод show для вывода состояния лампочек на экран. В данном случае мы будем использовать символ "-" для выключенных лампочек (со значением 0) и символ "." для включенных лампочек (со значением 1).

python
def show(self):
display_state = ""
for lamp in self.state:
if lamp == "0":
display_state += "-"
elif lamp == "1":
display_state += "."
print(display_state)


Шаг 5: Пример использования
Для примера создадим экземпляр класса LampRow, передав ему строку состояния лампочек. Затем вызовем метод show для отображения состояния.

python
lamps = LampRow("10011011")
lamps.show()


Полный код программы:

python
class LampRow:
def __init__(self, state):
if len(state) != 8:
state = "0" * 8
self.state = state
self._state = state

def show(self):
display_state = ""
for lamp in self.state:
if lamp == "0":
display_state += "-"
elif lamp == "1":
display_state += "."
print(display_state)

lamps = LampRow("10011011")
lamps.show()


Результат:

.----