diff --git a/TEMA6/OKZ.py b/TEMA6/OKZ.py new file mode 100644 index 0000000..eb46f83 --- /dev/null +++ b/TEMA6/OKZ.py @@ -0,0 +1,15 @@ +import random +import pickle +tpl= tuple(str(random.randint(6, 56)) for _ in range(125)) +spis=["Filippov", "Tabolin", "Berezhkov", "Goloshapov", "Timoshenko"] +fp = open("Zadanie.bin", "wb") +pickle.dump(tpl, fp) +pickle.dump(spis, fp) +fp.close() +fp = open("Zadanie.bin", "rb") +obj1=pickle.load(fp) +obj2=pickle.load(fp) +print("Файлы obj1 и tpl совпадают") if obj1 == tpl else print("Файлы не совпадают") +print("Файлы obj2 и spis совпадают") if obj2 == spis else print("Файлы не совпадают") +for i in range(125//5): + exec('list' + str(i) + '=' + str(list(obj1[i:i+5]))) diff --git a/TEMA6/task.md b/TEMA6/task.md new file mode 100644 index 0000000..f4f0532 --- /dev/null +++ b/TEMA6/task.md @@ -0,0 +1,74 @@ + # Общее контрольное задание по теме 6 +Филиппов Даниил Юрьевич, А-01-23 + + # Задание: +Придумайте инструкции и запишите их в файл с расширением .py, которые выполняют следующие операции: +1. Создаётся объект-кортеж со 125 целыми случайными числами из диапазона от 6 до 56, представленными в виде символьных строк; +2. Создаётся объект-список с вашей фамилией и 4 фамилиями ваших одноклассников; +3. Записывается кортеж в бинарный файл; +4. Записывается в этот же файл список и закрывается файл; +5. Открывается этот файл для чтения и считывает из него данные в 2 новых объекта; +6. Проверяется на совпадение новых объектов с исходными и выводится соответствующее сообщение; +7. Разделяется кортеж на совокупности по 5 чисел в каждой и они записываются в виде отдельных списков со своими именами. + + # Решение: +1. +```py +>>> import random +>>> tpl= tuple(str(random.randint(6, 56)) for _ in range(125)) +>>> tpl +('51', '16', '55', '38', '10', '26', '47', '26', '50', '31', '55', '39', '40', '54', '41', '14', '42', '19', '33', '28', '22', '38', '19', '34', '8', '50', '19', '24', '8', '18', '23', '19', '54', '32', '6', '6', '9', '22', '36', '54', '15', '35', '48', '45', '10', '30', '43', '21', '42', '11', '53', '10', '39', '12', '10', '36', '27', '24', '53', '14', '16', '54', '18', '15', '42', '49', '53', '25', '11', '21', '12', '41', '43', '36', '38', '54', '50', '14', '24', '33', '9', '37', '6', '15', '39', '48', '48', '24', '43', '54', '19', '32', '48', '14', '23', '35', '29', '20', '26', '38', '30', '43', '15', '54', '21', '21', '12', '22', '46', '23', '42', '47', '31', '40', '40', '28', '31', '29', '7', '16', '27', '9', '32', '30', '45') +``` + +2. +```py +>>> spis=["Filippov", "Tabolin", "Berezhkov", "Goloshapov", "Timoshenko"] +>>> spis +['Filippov', 'Tabolin', 'Berezhkov', 'Goloshapov', 'Timoshenko'] +``` + +3. +```py +>>> fp = open("Zadanie.bin", "wb") +>>> pickle.dump(tpl, fp) +``` + +4. +```py +>>> pickle.dump(spis, fp) +>>> fp.close() +``` + +5. +```py +>>> fp = open("Zadanie.bin", "rb") +>>> obj1=pickle.load(fp) +>>> obj2=pickle.load(fp) +>>> obj1 +('51', '16', '55', '38', '10', '26', '47', '26', '50', '31', '55', '39', '40', '54', '41', '14', '42', '19', '33', '28', '22', '38', '19', '34', '8', '50', '19', '24', '8', '18', '23', '19', '54', '32', '6', '6', '9', '22', '36', '54', '15', '35', '48', '45', '10', '30', '43', '21', '42', '11', '53', '10', '39', '12', '10', '36', '27', '24', '53', '14', '16', '54', '18', '15', '42', '49', '53', '25', '11', '21', '12', '41', '43', '36', '38', '54', '50', '14', '24', '33', '9', '37', '6', '15', '39', '48', '48', '24', '43', '54', '19', '32', '48', '14', '23', '35', '29', '20', '26', '38', '30', '43', '15', '54', '21', '21', '12', '22', '46', '23', '42', '47', '31', '40', '40', '28', '31', '29', '7', '16', '27', '9', '32', '30', '45') +>>> obj2 +['Filippov', 'Tabolin', 'Berezhkov', 'Goloshapov', 'Timoshenko'] +``` + +6. +```py +>>> print("Файлы obj1 и tpl совпадают") if obj1 == tpl else print("Файлы не совпадают") +Файлы obj1 и tpl совпадают +>>> print("Файлы obj2 и spis совпадают") if obj2 == spis else print("Файлы не совпадают") +Файлы obj2 и spis совпадают +``` + +7. +```py +>>> for i in range(125//5): +... exec('list' + str(i) + '=' + str(list(obj1[i:i+5]))) +... +>>> list1 +['16', '55', '38', '10', '26'] +>>> list2 +['55', '38', '10', '26', '47'] +>>> list20 +['22', '38', '19', '34', '8'] +``` + +Данные команды записаны в файл OKZ.py \ No newline at end of file