Files
python-labs/TEMA6/task.md
Katerina f98b85a0d7 t1
2025-11-16 17:37:45 +03:00

63 строки
3.4 KiB
Markdown
Исходник Ответственный История

Этот файл содержит невидимые символы Юникода
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Общее контрольное задание
Зеленкина Катерина, А-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]}")
```