форкнуто от main/python-labs
Родитель
b066616722
Сommit
e1d91d2417
@ -0,0 +1,18 @@
|
||||
# Общее контрольное задание к теме 6
|
||||
|
||||
Гордиевских Данил А-03-23
|
||||
|
||||
## Задание
|
||||
|
||||
Придумайте инструкции и запишите их в файл с расширением .py , которые выполняют следую-щие операции:
|
||||
Создаётся объект-кортеж со 125 целыми случайными числами из диапазона от 6 до 56, представленными в виде символьных строк.
|
||||
Создаётся объект-список с вашей фамилией и 4 фамилиями ваших одноклассников.
|
||||
Записывается кортеж в бинарный файл.
|
||||
Записывается в этот же файл список и закрывается файл.
|
||||
Открывается этот файл для чтения и считывает из него данные в 2 новых объекта.
|
||||
Проверяется на совпадение новых объектов с исходными и выводится соответствующее сообщение.
|
||||
Разделяется кортеж на совокупности по 5 чисел в каждой и они записываются в виде от-дельных списков со своими именами.
|
||||
|
||||
## Решение
|
||||
|
||||
[Задание](task.py)
|
||||
@ -0,0 +1,28 @@
|
||||
import random
|
||||
import pickle
|
||||
|
||||
a=[]
|
||||
for i in range(125):
|
||||
a.append(str(random.randint(6,27)))
|
||||
cort = tuple(a)
|
||||
|
||||
spis = ["Гордиевских","Девятова","Креветов","Ефимова"]
|
||||
|
||||
f = open("binfile.bin", "wb")
|
||||
pickle.dump(cort, f)
|
||||
pickle.dump(spis, f)
|
||||
f.close()
|
||||
|
||||
f = open("binfile.bin", "rb")
|
||||
newcort = pickle.load(f)
|
||||
newspis = pickle.load(f)
|
||||
f.close()
|
||||
|
||||
if (cort == newcort) and (spis == newspis):
|
||||
print("Запись и чтение прошли успешно")
|
||||
else:
|
||||
print("На каком-то этапе произошла ошибка")
|
||||
|
||||
print(cort)
|
||||
for i in range(0, len(cort), 5):
|
||||
exec(f"plist{i//5} = list(cort[{i}:{i+5}]);print(plist{i//5})")
|
||||
Загрузка…
Ссылка в новой задаче