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

63 строки
3.4 KiB
Markdown

This file contains invisible Unicode characters!

This file contains invisible Unicode characters that may be processed differently from what appears below. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to reveal hidden characters.

# Общее контрольное задание
Зеленкина Катерина, А-02-23
## Задание
Придумайте инструкции и запишите их в файл с расширением .py , которые выполняют следующие операции:
1. Создаётся объект-кортеж со 125 целыми случайными числами из диапазона от 6 до 56, представленными в виде символьных строк.
2. Создаётся объект-список с вашей фамилией и 4 фамилиями ваших одноклассников.
3. Записывается кортеж в бинарный файл.
4. Записывается в этот же файл список и закрывается файл.
5. Открывается этот файл для чтения и считывает из него данные в 2 новых объекта.
6. Проверяется на совпадение новых объектов с исходными и выводится соответствующее со-общение.
7. Разделяется кортеж на совокупности по 5 чисел в каждой и они записываются в виде от-дельных списков со своими именами.
## Решение
```py
# Создаётся объект-кортеж со 125 целыми случайными числами из диапазона от 6 до 56, представленными в виде символьных строк.
import random
n = list(range(1, 126, 1))
print(n)
tup = ()
for i in n:
tup = tuple(tup + (random.randint(6, 56),))
str_tup = tuple(map(str, tup))
print(str_tup)
# Создаётся объект-список с вашей фамилией и 4 фамилиями ваших одноклассни
surname = ["Криви", "Киреев", "Капитонов", "Ефремов", "Добровольска"]
print("Список фамилий:", surname)
# Записать кортеж в бинарный файл.
import os
import pickle
os.chdir(r"C:\Users\user\python-labs\TEMA6")
a = open('bin.mnz', 'wb')
pickle.dump(str_tup, a)
# Записывается в этот же файл список и закрывается файл.
pickle.dump(surname, a)
a.close()
# Открывается этот файл для чтения и считывает из него данные в 2 новых объекта.
a = open('bin.mnz', 'rb')
obj1 = pickle.load(a)
obj2_spis = pickle.load(a)
a.close()
print("Прочитан кортеж:", obj1)
print("Прочитан список:", obj2_spis)
# Проверяется на совпадение новых объектов с исходными и выводится соответствующее со-общение.
if obj1 == str_tup and obj2_spis == surname:
print("Объекты совпадают с исходными!")
else:
print("Объекты не совпадают с исходными!")
# Разделяется кортеж на совокупности по 5 чисел в каждой и они записываются в виде отдельных списков со своими именами.
l = []
for i in range(0, 125, 5):
l.append(list(str_tup[i:i + 5]))
for i in range(25):
print(f"list{i + 1} = {l[i]}")
```