Python Создание объектов в программе «E»
Изменить класс из задания D так, чтобы можно было добавлять фразы в набор фраз, которые знает попугай. При вызове метода say попугай выдаёт случайную фразу из своего набора.
Пример:
p = Parrot( "Гав!" )
p.say() Гав!
p.learn( "Мяу!" )
p.say() Гав!
p.say(3) Мяу! Мяу! Мяу!
«D»
Изменить класс из задания C так, чтобы при вызове метода say можно было задать число повторений.
Пример:
p = Parrot( "Гав!" )
p.say() Гав!
p.newText( "Мяу!" )
p.say( 3 ) Мяу! Мяу! Мяу!
Сделайте Е

vhjklv vhjklv    3   15.04.2022 11:00    86

Ответы
zimina31 zimina31  11.01.2024 22:04
Хорошо, чтобы изменить класс из задания D и добавить функционал, позволяющий добавлять фразы в набор фраз попугая и выводить случайную фразу, нам необходимо выполнить следующие шаги:

1. Создайте класс "Parrot" и определите в нем метод-конструктор "__init__". В методе-конструкторе будут инициализироваться атрибуты класса. Один из атрибутов будет список "phrases", в котором будут храниться фразы, которые знает попугай.

```python
class Parrot:
def __init__(self, phrase):
self.phrases = [phrase]
```

2. Определите метод "learn", который будет добавлять новую фразу в список "phrases".

```python
def learn(self, new_phrase):
self.phrases.append(new_phrase)
```

3. Определите метод "say", который будет выводить случайную фразу из списка "phrases". Для этого нам понадобится использовать модуль "random".

```python
import random

class Parrot:
def __init__(self, phrase):
self.phrases = [phrase]

def learn(self, new_phrase):
self.phrases.append(new_phrase)

def say(self, repetitions=1):
for _ in range(repetitions):
print(random.choice(self.phrases))
```

4. Создайте объект класса "Parrot" и проверьте результат:

```python
p = Parrot("Гав!")
p.say() # Выведет случайную фразу из списка: "Гав!"

p.learn("Мяу!")
p.say() # Выведет случайную фразу из списка: "Гав!" или "Мяу!"
p.say(3) # Выведет фразу "Мяу!" три раза
```

Теперь класс "Parrot" позволяет добавлять новые фразы в набор фраз попугая и выводить случайные фразы из этого набора. Кроме того, метод "say" позволяет задать число повторений при выводе фразы.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика