# Индивидуальное контрольное задание по теме 8 Лыкова Елизавета, А-01-23 ## Задание По указанному преподавателем варианту контрольного задания обратитесь к индивидуальному заданию с таким номером в теме 7, разработайте функцию, на ее основе создайте модуль. Создайте второй модуль, в котором должны быть инструкции для ввода/создания исходных данных для проверки работы функции, вызов функции и отображение полученных результатов. Разработайте функцию с двумя аргументами – списками. На их основе в функции должен со-здаваться словарь с ключами из первого списка и со значениями – натуральными логарифмами абсолютных значений соответствующих элементов из второго списка. Полученный словарь должен записываться в бинарный файл с именем Slovar.bin. Проверьте функцию на двух примерах с разными списками. ## Решение ```py import os import math import pickle def dictionary(keys,values): ''' Создает словарь с ключами из первого списка и значениями из второго''' result = {} for i in range(len(keys)): result[keys[i]] = math.log(abs(values[i])) fl = open('Slovar.bin','wb') pickle.dump(result,fl) fl.close() return result ``` Модуль slovar ```py import slovar # Пример 1 keys1 = ['A','B','C'] values1 = [16,7,890] print(f'Пример 1') print(f'Ключи: {keys1}') print(f'Значения: {values1}') result1 = slovar.dictionary(keys1,values1) print(f'Созданный словарь: {result1}') # Пример 2 keys2 = ['d','b','x','s'] values2 = [10.7,-4,5,63] print(f'Пример 2') print(f'Ключи: {keys2}') print(f'Значения: {values2}') result2 = slovar.dictionary(keys2,values2) print(f'Созданный словарь: {result2}') ``` Модуль main ```py import main Пример 1 Ключи: ['A', 'B', 'C'] Значения: [16, 7, 890] Созданный словарь: {'A': 2.772588722239781, 'B': 1.9459101490553132, 'C': 6.7912214627261855} Пример 2 Ключи: ['d', 'b', 'x', 's'] Значения: [10.7, -4, 5, 63] Созданный словарь: {'d': 2.3702437414678603, 'b': 1.3862943611198906, 'x': 1.6094379124341003, 's': 4.143134726391533} ``` Выполнение