Этот коммит содержится в:
2025-11-17 09:03:11 +03:00
родитель 0ef1f759d1
Коммит 8010184e20
2 изменённых файлов: 73 добавлений и 2 удалений

Двоичные данные
TEMA6/binary.bin Обычный файл

Двоичный файл не отображается.

Просмотреть файл

@@ -1,7 +1,78 @@
# Общее контрольное задание по теме 6
Коломейцев Дмитрий, А-02-23
Коломейцев, А-02-23
## Задание
## Решение
* Создаётся объект-кортеж со 125 целыми случайными числами из диапазона от 6 до 56, представленными в виде символьных строк.
* Создаётся объект-список с вашей фамилией и 4 фамилиями ваших одноклассников.
* Кортеж записывается в бинарный файл.
* Список записывается в этот же файл, затем файл закрывается.
* Этот файл открывается для чтения, из него считываются данные в 2 новых объекта.
* Проверяется на совпадение новых объектов с исходными и выводится соответствующее сообщение.
* Кортеж разделяется на совокупности по 5 чисел в каждой и они записываются в виде отдельных списков со своими именами.
## Решение
```py
#1
import random
kort = tuple([str(random.randint(6, 56)) for i in range(125)])
kort
('50', '34', '15', '23', '20', '38', '26', '6', '6', '46', '7', '26', '48', '15', '6', '12', '43', '19', '37', '12', '49', '44', '53', '19', '55', '13', '34', '14', '25', '17', '41', '22', '33', '19', '19', '53', '48', '37', '25', '37', '33', '55', '15', '13', '55', '50', '32', '49', '11', '18', '9', '39', '47', '15', '41', '15', '21', '28', '47', '40', '44', '40', '53', '45', '8', '49', '36', '54', '12', '6', '37', '9', '53', '39', '26', '34', '15', '20', '14', '37', '14', '40', '15', '11', '42', '22', '25', '28', '15', '47', '46', '12', '13', '46', '45', '26', '38', '19', '22', '45', '20', '29', '42', '9', '26', '38', '28', '55', '26', '14', '56', '10', '38', '18', '8', '55', '44', '12', '32', '36', '20', '31', '16', '54', '16')
len(kort)
125
#2
lastnames = ["Kolomeytsev", "Jordan", "Bryant", "James", "O'Neal"]
#3
import os, pickle
os.chdir("/home/s0ba4/mpei/python-labs/TEMA6")
fp = open("binary.bin", "wb")
pickle.dump(kort, fp)
#4
pickle.dump(lastnames, fp)
fp.close()
#5
fp = open("binary.bin", "rb")
newKort = pickle.load(fp)
newList = pickle.load(fp)
newKort
('50', '34', '15', '23', '20', '38', '26', '6', '6', '46', '7', '26', '48', '15', '6', '12', '43', '19', '37', '12', '49', '44', '53', '19', '55', '13', '34', '14', '25', '17', '41', '22', '33', '19', '19', '53', '48', '37', '25', '37', '33', '55', '15', '13', '55', '50', '32', '49', '11', '18', '9', '39', '47', '15', '41', '15', '21', '28', '47', '40', '44', '40', '53', '45', '8', '49', '36', '54', '12', '6', '37', '9', '53', '39', '26', '34', '15', '20', '14', '37', '14', '40', '15', '11', '42', '22', '25', '28', '15', '47', '46', '12', '13', '46', '45', '26', '38', '19', '22', '45', '20', '29', '42', '9', '26', '38', '28', '55', '26', '14', '56', '10', '38', '18', '8', '55', '44', '12', '32', '36', '20', '31', '16', '54', '16')
newList
['Kolomeytsev', 'Jordan', 'Bryant', 'James', "O'Neal"]
fp.close()
#6
if (newKort == kort): print("Кортежи совпадают")
Кортежи совпадают
if (newList == lastnames): print("Списки совпадают")
Списки совпадают
#7
for i in range(int(len(kort) / 5)):
globals() ["list{}".format(i)] = list(kort[i * 5: (i + 1) * 5])
list0
['50', '34', '15', '23', '20']
list1
['38', '26', '6', '6', '46']
list2
['7', '26', '48', '15', '6']
list24
['20', '31', '16', '54', '16']
list25
# ошибка
```