Я решил создать свою реализацию функции map и генераторной функции, которая принимает функцию и последовательность в качестве аргументов. Полученный генератор будет генерировать значения из переданной последовательности, пропущенные через переданную функцию.python
def my_map(func, seq)⁚
for item in seq⁚
yield func(item)
В этом коде я определяю функцию my_map, которая принимает два аргумента⁚ func (функцию) и seq (последовательность). Внутри функции я использую цикл for для прохода по каждому элементу в seq. Затем я использую ключевое слово yield, чтобы возвращать значения, полученные после применения func к каждому элементу последовательности.Теперь давайте протестируем эту функцию, используя пример из вашего сообщения⁚
python
func_in eval(input(″Введите функцию⁚ ″))
seq_in eval(input(″Введите последовательность⁚ ″))
result my_map(func_in, seq_in)
for item in result⁚
print(item)
В этом коде я сначала запрашиваю у пользователя ввод функции с помощью функции eval. Затем я запрашиваю ввод последовательности. Затем я вызываю функцию my_map, передавая ей введенную функцию и последовательность. Затем я использую цикл for для вывода каждого значения из полученного генератора.Примеры использования⁚
1. Входные данные⁚
Функция⁚ lambda x⁚ x ** 2
Последовательность⁚ range(-10, 11, 2)
100
64
36
16
4
0 4
16
36 64 100
Таким образом, я успешно создал реализацию функции map и генераторной функции, которая принимает функцию и последовательность в качестве аргументов.