# Общее контрольное задание по теме 6 Степанов Артём, А-02-23 ## Задание * Создаётся объект-кортеж со 125 целыми случайными числами из диапазона от 6 до 56, представленными в виде символьных строк. * Создаётся объект-список с вашей фамилией и 4 фамилиями ваших одноклассников. * Записывается кортеж в бинарный файл. * Записывается в этот же файл список и закрывается файл. * Открывается этот файл для чтения и считывает из него данные в 2 новых объекта. * Проверяется на совпадение новых объектов с исходными и выводится соответствующее сообщение. * Разделяется кортеж на совокупности по 5 чисел в каждой и они записываются в виде отдельных списков со своими именами. ## Решение ```py >>> #1 >>> >>> import random >>> kort = tuple([str(random.randint(6, 56)) for i in range(125)]) >>> kort ('12', '34', '27', '28', '19', '38', '47', '26', '43', '32', '50', '22', '18', '15', '41', '37', '21', '37', '41', '26', '33', '55', '41', '19', '23', '11', '39', '10', '50', '56', '14', '14', '14', '43', '38', '7', '52', '24', '6', '18', '12', '31', '48', '16', '41', '19', '47', '42', '31', '20', '50', '53', '7', '41', '20', '10', '46', '44', '50', '12', '40', '13', '33', '26', '37', '55', '41', '16', '29', '36', '12', '34', '49', '31', '45', '34', '40', '54', '51', '6', '22', '53', '30', '16', '12', '46', '38', '8', '48', '47', '21', '34', '30', '54', '9', '49', '7', '12', '39', '44', '27', '50', '31', '36', '20', '24', '43', '36', '46', '37', '9', '42', '32', '8', '25', '19', '13', '39', '30', '22', '19', '20', '16', '23', '37') >>> len(kort) 125 >>> >>> #2 >>> >>> lastnames = ["Stepanov", "Bezhenar", "Volodin", "Kireev", "Kolomeytsev"] >>> >>> #3 >>> >>> import os, pickle >>> os.chdir("C:\\Users\\User\\Desktop\\StepanovAV\\python-labs\\TEMA6") >>> fp = open("binary.bin", "wb") >>> pickle.dump(kort, fp) >>> >>> #4 >>> >>> pickle.dump(lastnames, fp) >>> fp.close() >>> >>> #5 >>> >>> fp = open("binary.bin", "rb") >>> newKort = pickle.load(fp) >>> newList = pickle.load(fp) >>> newKort ('12', '34', '27', '28', '19', '38', '47', '26', '43', '32', '50', '22', '18', '15', '41', '37', '21', '37', '41', '26', '33', '55', '41', '19', '23', '11', '39', '10', '50', '56', '14', '14', '14', '43', '38', '7', '52', '24', '6', '18', '12', '31', '48', '16', '41', '19', '47', '42', '31', '20', '50', '53', '7', '41', '20', '10', '46', '44', '50', '12', '40', '13', '33', '26', '37', '55', '41', '16', '29', '36', '12', '34', '49', '31', '45', '34', '40', '54', '51', '6', '22', '53', '30', '16', '12', '46', '38', '8', '48', '47', '21', '34', '30', '54', '9', '49', '7', '12', '39', '44', '27', '50', '31', '36', '20', '24', '43', '36', '46', '37', '9', '42', '32', '8', '25', '19', '13', '39', '30', '22', '19', '20', '16', '23', '37') >>> newList ['Stepanov', 'Bezhenar', 'Volodin', 'Kireev', 'Kolomeytsev'] >>> fp.close() >>> >>> #6 >>> >>> if (newKort == kort): print("Кортежи совпадают") ... Кортежи совпадают >>> if (newList == lastnames): print("Списки совпадают") ... Списки совпадают >>> >>> #7 >>> >>> for i in range(int(len(kort) / 5)): ... globals() ["list{}".format(i)] = list(kort[i * 5: (i + 1) * 5]) ... >>> list0 ['12', '34', '27', '28', '19'] >>> list1 ['38', '47', '26', '43', '32'] >>> list24 ['19', '20', '16', '23', '37'] ```