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

2.2 KiB

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

Ефремов Станислав, А-02-23

Задание

Придумайте инструкции и запишите их в файл с расширением .py , которые выполняют следующие операции:

• Создаётся объект-кортеж со 125 целыми случайными числами из диапазона от 6 до 56, представленными в виде символьных строк.

• Создаётся объект-список с вашей фамилией и 4 фамилиями ваших одноклассников.

• Записывается кортеж в бинарный файл.

• Записывается в этот же файл список и закрывается файл.

• Открывается этот файл для чтения и считывает из него данные в 2 новых объекта.

• Проверяется на совпадение новых объектов с исходными и выводится соответствующее сообщение.

• Разделяется кортеж на совокупности по 5 чисел в каждой и они записываются в виде отдельных списков со своими именами.

Решение

import random
import os
import pickle

list_corteg = []
for _ in range(125):
    random_number = random.randint(6, 56)
    list_corteg.append(str(random_number))
    
list_corteg = tuple(list_corteg)

list_fam = ['Ефременко', 'Добровольска', 'Туровец', 'Хатюхин', 'Шабатов']
fp = open('fam.2ob', 'wb')
pickle.dump(list_corteg, fp)
pickle.dump(list_fam, fp)
fp.close()


fp = open('fam.2ob', 'rb')
obj_5_1 = pickle.load(fp)
obj_5_2 = pickle.load(fp)
fp.close()

print(obj_5_1, obj_5_2, sep = '\n')

print('yes' if obj_5_1 == list_corteg else 'no')
print('yes' if obj_5_2 == list_fam else 'no')





groups = []
for i in range(0, len(obj_5_1), 5):
    group = list(obj_5_1[i:i+5])
    groups.append(group)
    print(f"   Группа {len(groups)}: {group}")