## Общее контрольное задание по теме 6 Лазарев Данил Вячеславович, А-01-23 ## Задание Придумайте инструкции и запишите их в файл с расширением .py , которые выполняют следующие операции: 1. Создаётся объект-кортеж со 125 целыми случайными числами из диапазона от 6 до 56, представленными в виде символьных строк. 2. Создаётся объект-список с вашей фамилией и 4 фамилиями ваших одноклассников. 3. Записывается кортеж в бинарный файл. 4. Записывается в этот же файл список и закрывается файл. 5. Открывается этот файл для чтения и считывает из него данные в 2 новых объекта. 6. Проверяется на совпадение новых объектов с исходными и выводится соответствующее сообщение. 7. Разделяется кортеж на совокупности по 5 чисел в каждой и они записываются в виде отдельных списков со своими именами. ## Решение 1 ``` import random import pickle kort = list(range(1, 126, 1)) print(kort) >>[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125] kortrandom = () for i in kort: kortrandom = kortrandom + (random.randint(6, 56),) stroka_iz_kort = tuple(map(str, kortrandom)) print(stroka_iz_kort) >> ('16', '54', '11', '26', '41', '11', '7', '36', '54', '55', '40', '28', '31', '38', '30', '14', '10', '41', '22', '37', '20', '33', '52', '32', '38', '40', '31', '6', '41', '37', '38', '8', '24', '32', '51', '13', '28', '40', '43', '32', '39', '40', '54', '26', '20', '36', '37', '10', '35', '35', '45', '40', '40', '15', '28', '17', '12', '43', '7', '23', '37', '31', '47', '9', '31', '11', '30', '13', '50', '46', '27', '42', '9', '24', '56', '49', '21', '44', '53', '36', '7', '13', '23', '52', '46', '50', '11', '44', '49', '33', '25', '33', '26', '18', '22', '33', '23', '33', '31', '25', '11', '11', '39', '29', '24', '10', '35', '49', '13', '21', '36', '53', '43', '8', '34', '55', '29', '38', '44', '31', '36', '35', '54', '43', '39') ``` 2 ``` sur = ["Лазарев", "Анисенков", "Филлипова", "Жалнин", "Мельников"] print("Список фамилий:", sur) >> Список фамилий: ['Лазарев', 'Анисенков', 'Филлипова', 'Жалнин', 'Мельников'] ``` 3-4 ``` f = open('bin.mnz', 'wb') pickle.dump(stroka_iz_kort, f) pickle.dump(sur, f) f.close() ``` 5 ``` f = open('bin.mnz', 'rb') object1 = pickle.load(f) object2 = pickle.load(f) f.close() print("Объект №1:",object1) >> Объект №1: ('16', '54', '11', '26', '41', '11', '7', '36', '54', '55', '40', '28', '31', '38', '30', '14', '10', '41', '22', '37', '20', '33', '52', '32', '38', '40', '31', '6', '41', '37', '38', '8', '24', '32', '51', '13', '28', '40', '43', '32', '39', '40', '54', '26', '20', '36', '37', '10', '35', '35', '45', '40', '40', '15', '28', '17', '12', '43', '7', '23', '37', '31', '47', '9', '31', '11', '30', '13', '50', '46', '27', '42', '9', '24', '56', '49', '21', '44', '53', '36', '7', '13', '23', '52', '46', '50', '11', '44', '49', '33', '25', '33', '26', '18', '22', '33', '23', '33', '31', '25', '11', '11', '39', '29', '24', '10', '35', '49', '13', '21', '36', '53', '43', '8', '34', '55', '29', '38', '44', '31', '36', '35', '54', '43', '39') print("Объект №2:",object2) Объект №2: ['Лазарев', 'Анисенков', 'Филлипова', 'Жалнин', 'Мельников'] ``` 6 ``` if object1 == stroka_iz_kort and object2 == sur: print("Объекты идентичны исходным") else: print("Объекты отличны от изначально заданных") >> Объекты идентичны исходным ``` 7 ``` splitkort = [] for i in range(0, 125, 5): splitkort.append(list(stroka_iz_kort[i:i + 5])) for i in range(25): print(f"Список№{i + 1} = {splitkort[i]}") >> Список№1 = ['16', '54', '11', '26', '41'] Список№2 = ['11', '7', '36', '54', '55'] Список№3 = ['40', '28', '31', '38', '30'] Список№4 = ['14', '10', '41', '22', '37'] Список№5 = ['20', '33', '52', '32', '38'] Список№6 = ['40', '31', '6', '41', '37'] Список№7 = ['38', '8', '24', '32', '51'] Список№8 = ['13', '28', '40', '43', '32'] Список№9 = ['39', '40', '54', '26', '20'] Список№10 = ['36', '37', '10', '35', '35'] Список№11 = ['45', '40', '40', '15', '28'] Список№12 = ['17', '12', '43', '7', '23'] Список№13 = ['37', '31', '47', '9', '31'] Список№14 = ['11', '30', '13', '50', '46'] Список№15 = ['27', '42', '9', '24', '56'] Список№16 = ['49', '21', '44', '53', '36'] Список№17 = ['7', '13', '23', '52', '46'] Список№18 = ['50', '11', '44', '49', '33'] Список№19 = ['25', '33', '26', '18', '22'] Список№20 = ['33', '23', '33', '31', '25'] Список№21 = ['11', '11', '39', '29', '24'] Список№22 = ['10', '35', '49', '13', '21'] Список№23 = ['36', '53', '43', '8', '34'] Список№24 = ['55', '29', '38', '44', '31'] Список№25 = ['36', '35', '54', '43', '39'] ```