# Общее контрольное задание по Теме 6 Таболин Иван, А-01-23 ## Задание Придумайте инструкции и запишите их в файл с расширением .py , которые выполняют следующие операции: 1. Создаётся объект-кортеж со 125 целыми случайными числами из диапазона от 6 до 56, представ-ленными в виде символьных строк. 2. Создаётся объект-список с вашей фамилией и 4 фамилиями ваших одноклассников. 3. Записывается кортеж в бинарный файл. 4. Записывается в этот же файл список и закрывается файл. 5. Открывается этот файл для чтения и считывает из него данные в 2 новых объекта. 6. Проверяется на совпадение новых объектов с исходными и выводится соответствующее сообще-ние. 7. Разделяется кортеж на совокупности по 5 чисел в каждой и они записываются в виде отдельных списков со своими именами. ## Решение 1. ```py stroka='' for i in range(125): stroka+=str(random.randint(6,56))+' ' stroka=stroka[:-1] kort=tuple(stroka.split(' '));print(kort, len(kort)) ('15', '8', '50', '41', '20', '49', '43', '34', '22', '11', '42', '34', '15', '23', '25', '42', '9', '10', '26', '28', '26', '7', '30', '50', '19', '23', '9', '39', '19', '13', '27', '46', '20', '32', '13', '28', '7', '27', '18', '41', '28', '10', '27', '44', '32', '22', '37', '7', '6', '46', '34', '36', '8', '47', '43', '30', '9', '23', '20', '52', '26', '34', '50', '50', '47', '50', '46', '50', '29', '46', '23', '8', '29', '21', '32', '29', '36', '9', '53', '11', '34', '10', '28', '17', '10', '21', '40', '30', '23', '26', '48', '15', '48', '9', '29', '17', '42', '28', '37', '23', '30', '38', '9', '55', '17', '35', '31', '52', '17', '12', '27', '9', '53', '14', '17', '22', '11', '13', '54', '45', '15', '52', '23', '11', '37') 125 ``` 2. ```py surnames=['Tabolin','Berezhkov','Krishtul','Stepanischev','Filippov'] print(surnames) ['Tabolin', 'Berezhkov', 'Krishtul', 'Stepanischev', 'Filippov'] ``` 3. ```py import pickle fb=open('taskb.bin','wb') pickle.dump(kort, fb) ``` 4. ```py pickle.dump(surnames,fb) fb.close() ``` 5. ```py fb=open('taskb.bin','rb') inp1=pickle.load(fb) inp2=pickle.load(fb) print(inp1,inp2,sep='\n') ('15', '8', '50', '41', '20', '49', '43', '34', '22', '11', '42', '34', '15', '23', '25', '42', '9', '10', '26', '28', '26', '7', '30', '50', '19', '23', '9', '39', '19', '13', '27', '46', '20', '32', '13', '28', '7', '27', '18', '41', '28', '10', '27', '44', '32', '22', '37', '7', '6', '46', '34', '36', '8', '47', '43', '30', '9', '23', '20', '52', '26', '34', '50', '50', '47', '50', '46', '50', '29', '46', '23', '8', '29', '21', '32', '29', '36', '9', '53', '11', '34', '10', '28', '17', '10', '21', '40', '30', '23', '26', '48', '15', '48', '9', '29', '17', '42', '28', '37', '23', '30', '38', '9', '55', '17', '35', '31', '52', '17', '12', '27', '9', '53', '14', '17', '22', '11', '13', '54', '45', '15', '52', '23', '11', '37') ['Tabolin', 'Berezhkov', 'Krishtul', 'Stepanischev', 'Filippov'] fb.close() ``` 6. ```py if (inp1==kort) and (inp2==surnames): print('Вывод в файл и последующее чтение из файла выполнено корректно.') else: print('Ошибка!') Вывод в файл и последующее чтение из файла выполнено корректно. ``` 7. ```py for i in range(125//5): exec('spis'+str(i)+'='+str(list(inp1[i:i+5]))) for i in range(125//5): exec('print(spis'+str(i)+')') ['15', '8', '50', '41', '20'] ['8', '50', '41', '20', '49'] ['50', '41', '20', '49', '43'] ['41', '20', '49', '43', '34'] ['20', '49', '43', '34', '22'] ['49', '43', '34', '22', '11'] ['43', '34', '22', '11', '42'] ['34', '22', '11', '42', '34'] ['22', '11', '42', '34', '15'] ['11', '42', '34', '15', '23'] ['42', '34', '15', '23', '25'] ['34', '15', '23', '25', '42'] ['15', '23', '25', '42', '9'] ['23', '25', '42', '9', '10'] ['25', '42', '9', '10', '26'] ['42', '9', '10', '26', '28'] ['9', '10', '26', '28', '26'] ['10', '26', '28', '26', '7'] ['26', '28', '26', '7', '30'] ['28', '26', '7', '30', '50'] ['26', '7', '30', '50', '19'] ['7', '30', '50', '19', '23'] ['30', '50', '19', '23', '9'] ['50', '19', '23', '9', '39'] ['19', '23', '9', '39', '19'] ```