
Напишите функцию которая генерирует 100 рандомных чисел в диапазоне от 10 до 50 и возвращает их в
листе. Напишите ДЕКОРАТОР для этой функции которая удалит все дубликаты в первой функции и вернёт всё так же лист. ОТВЕТЬТЕ ПОЖАЛУЙСТА ДАМ 50 БАЛЛОВ!! ПРОшу

Ответы на вопрос

import random
def func_decorator(function): # Функция декоратор
def inner_func():
func = function() # Присваиваем результат функции random_list в переменную func
b = [] # Создаём пустой список для сортировки
for i in func :
if i in b:
continue # Если значение уже присутствует в списке, мы его пропускаем
elif not i in b:
b.append(i) # Если значения нету в списке, мы его добавляем
return b
return inner_func
@func_decorator
def random_list():
return random.choices(range(10, 51), k = 100)
# @func_decorator это тоже самое что и: random_list = func_decorator (random_list)
# random.choices (population, k=1). Возвращает список элементов размером k , выбранных из последовательности population
print(random_list())
Вот мой вариант решения)



Вот функция, которая генерирует 100 случайных чисел в диапазоне от 10 до 50 и возвращает их в виде списка:
```python import random
def generate_random_numbers(): numbers = [] for _ in range(100): numbers.append(random.randint(10, 50)) return numbers ```
А вот декоратор, который удаляет все дубликаты в списке, возвращаемом функцией `generate_random_numbers`:
```python def remove_duplicates(func): def wrapper(): numbers = func() numbers = list(set(numbers)) return numbers return wrapper ```
Вы можете использовать этот декоратор следующим образом:
```python @remove_duplicates def generate_random_numbers(): numbers = [] for _ in range(100): numbers.append(random.randint(10, 50)) return numbers ```
Теперь, когда вы вызываете функцию `generate_random_numbers()`, она сначала сгенерирует список случайных чисел, а затем удалит все дубликаты в этом списке.


Похожие вопросы
Топ вопросов за вчера в категории Информатика
Последние заданные вопросы в категории Информатика
-
Математика
-
Литература
-
Алгебра
-
Русский язык
-
Геометрия
-
Английский язык
-
Химия
-
Физика
-
Биология
-
Другие предметы
-
История
-
Обществознание
-
Окружающий мир
-
География
-
Українська мова
-
Информатика
-
Українська література
-
Қазақ тiлi
-
Экономика
-
Музыка
-
Право
-
Беларуская мова
-
Французский язык
-
Немецкий язык
-
МХК
-
ОБЖ
-
Психология
-
Физкультура и спорт
-
Астрономия
-
Кыргыз тили
-
Оʻzbek tili