# Общее контрольное задание по ТЕМЕ №6 Степанищев В.Р., А-03-23 ## Задание Придумайте инструкции и запишите их в файл с расширением .py , которые выполняют следующие операции. ## Решение • Создаётся объект-кортеж со 125 целыми случайными числами из диапазона от 6 до 56, представленными в виде символьных строк. ```py >>> import random as rn >>> kort = tuple(str(rn.randint(6,56)) for _ in range(126)) >>> kort ('8', '36', '36', '55', '6', '22', '51', '26', '23', '10', '23', '6', '27', '29', '19', '13', '13', '54', '40', '40', '27', '47', '6', '25', '43', '38', '22', '50', '43', '46', '29', '37', '7', '8', '9', '11', '20', '47', '15', '7', '27', '47', '54', '16', '37', '53', '12', '47', '42', '38', '33', '12', '40', '53', '8', '55', '19', '20', '28', '21', '14', '11', '11', '47', '34', '35', '20', '26', '36', '39', '27', '16', '21', '38', '41', '39', '42', '34', '51', '26', '16', '15', '6', '12', '51', '30', '41', '43', '47', '12', '20', '51', '38', '23', '28', '13', '44', '49', '17', '30', '6', '30', '37', '48', '21', '11', '13', '12', '30', '29', '56', '51', '23', '40', '28', '44', '21', '23', '46', '47', '17', '39', '29', '37', '50', '33') ``` • Создаётся объект-список с вашей фамилией и 4 фамилиями ваших одноклассников. ```py >>> spis = ['Криштул','Степанищев','Марков','Бережков','Таболин'] ``` • Записывается кортеж в бинарный файл. ```py >>> import pickle >>> fp=open('task.bn','wb') >>> pickle.dump(kort,fp) ``` • Записывается в этот же файл список и закрывается файл. ```py >>> pickle.dump(spis,fp) >>> fp.close() ``` • Открывается этот файл для чтения и считывает из него данные в 2 новых объекта. ```py >>> fp=open('task.bn','rb') >>> obj1=pickle.load(fp) >>> obj2=pickle.load(fp) >>> fp.close() ``` • Проверяется на совпадение новых объектов с исходными и выводится соответствующее сообщение. ```py >>> if(obj1 == kort and obj2 == spis): print("Новые объекты совпадают с исходными") Новые объекты совпадают с исходными ``` • Разделяется кортеж на совокупности по 5 чисел в каждой и они записываются в виде отдельных списков со своими именами. ```py >>> vocab = {} >>> for i in range(0,len(kort),5): vocab['группа №'+str(i//5)] = list(kort[i:i+5]) >>> vocab {'группа №0': ['8', '36', '36', '55', '6'], 'группа №1': ['22', '51', '26', '23', '10'], 'группа №2': ['23', '6', '27', '29', '19'], 'группа №3': ['13', '13', '54', '40', '40'], 'группа №4': ['27', '47', '6', '25', '43'], 'группа №5': ['38', '22', '50', '43', '46'], 'группа №6': ['29', '37', '7', '8', '9'], 'группа №7': ['11', '20', '47', '15', '7'], 'группа №8': ['27', '47', '54', '16', '37'], 'группа №9': ['53', '12', '47', '42', '38'], 'группа №10': ['33', '12', '40', '53', '8'], 'группа №11': ['55', '19', '20', '28', '21'], 'группа №12': ['14', '11', '11', '47', '34'], 'группа №13': ['35', '20', '26', '36', '39'], 'группа №14': ['27', '16', '21', '38', '41'], 'группа №15': ['39', '42', '34', '51', '26'], 'группа №16': ['16', '15', '6', '12', '51'], 'группа №17': ['30', '41', '43', '47', '12'], 'группа №18': ['20', '51', '38', '23', '28'], 'группа №19': ['13', '44', '49', '17', '30'], 'группа №20': ['6', '30', '37', '48', '21'], 'группа №21': ['11', '13', '12', '30', '29'], 'группа №22': ['56', '51', '23', '40', '28'], 'группа №23': ['44', '21', '23', '46', '47'], 'группа №24': ['17', '39', '29', '37', '50'], 'группа №25': ['33']} ```