Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

2.8 KiB

Общее контрольное задание по теме 6

Мамакин Ярослав, А-02-23

Задание

Придумайте инструкции и запишите их в файл с расширением .py , которые выполняют следую-щие операции: • Создаётся объект-кортеж со 125 целыми случайными числами из диапазона от 6 до 56, представленными в виде символьных строк. • Создаётся объект-список с вашей фамилией и 4 фамилиями ваших одноклассников. • Записывается кортеж в бинарный файл. • Записывается в этот же файл список и закрывается файл. • Открывается этот файл для чтения и считывает из него данные в 2 новых объекта. • Проверяется на совпадение новых объектов с исходными и выводится соответствующее со-общение. • Разделяется кортеж на совокупности по 5 чисел в каждой и они записываются в виде от-дельных списков со своими именами.

Решение

import random
import os
import pickle
random.seed()
kort = tuple([str(random.randint(6, 56)) for i in range(125)])
print(kort)
fam = ['Мамакин', 'Кузьменко', 'Шабатов', 'Похил', 'Симанков']
os.chdir(r'C:\Users\uprkt\Desktop\ПО\python-labs\TEMA6')
f = open('bin.mnz', 'wb')
pickle.dump(kort, f)
pickle.dump(fam, f)
f.close()
f = open('bin.mnz', 'rb')
obj1 = pickle.load(f)
obj2 = pickle.load(f)
if obj1 == kort and obj2 == fam:
    print('Объекты совпадают')
for i in range(0, len(kort), 5):
    exec(f'spis{i} = kort[i:i+5]')
print(spis0)

= RESTART: C:/Users/uprkt/Desktop/ПО/python-labs/TEMA6/task.py
('21', '31', '21', '25', '16', '7', '19', '37', '30', '12', '27', '45', '38', '26', '31', '40', '42', '40', '44', '11', '49', '20', '17', '54', '44', '14', '33', '25', '49', '26', '9', '12', '19', '31', '25', '7', '15', '25', '33', '21', '48', '11', '38', '56', '53', '55', '46', '8', '22', '35', '35', '46', '14', '17', '42', '55', '50', '24', '10', '26', '16', '45', '41', '18', '24', '40', '28', '18', '22', '50', '19', '40', '16', '33', '32', '43', '20', '18', '47', '56', '56', '35', '27', '22', '20', '37', '25', '22', '15', '48', '39', '50', '35', '22', '20', '24', '35', '21', '31', '8', '23', '18', '28', '54', '55', '55', '45', '37', '34', '38', '27', '34', '48', '53', '18', '49', '33', '19', '18', '33', '33', '17', '31', '52', '31')
Объекты совпадают
('21', '31', '21', '25', '16')