форкнуто от main/python-labs
Вы не можете выбрать более 25 тем
Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
2.1 KiB
2.1 KiB
Общее контрольное задание по теме 6
Придумайте инструкции и запишите их в файл с расширением .py , которые выполняют следую-щие операции:
• Создаётся объект-кортеж со 125 целыми случайными числами из диапазона от 6 до 56, представленными в виде символьных строк. • Создаётся объект-список с вашей фамилией и 4 фамилиями ваших одноклассников. • Записывается кортеж в бинарный файл. • Записывается в этот же файл список и закрывается файл. • Открывается этот файл для чтения и считывает из него данные в 2 новых объекта. • Проверяется на совпадение новых объектов с исходными и выводится соответствующее сообщение. • Разделяется кортеж на совокупности по 5 чисел в каждой и они записываются в виде отдельных списков со своими именами.
Решение
import pickle
import sys
import random
nums = tuple(str(random.randint(6, 56)) for _ in range(125))
print(nums)
fam = ["Shinkarenko", "Kolomeitsev", "Krivi", "Stepanov", "Simankov"]
fl = open("okz.okz", "wb")
pickle.dump(nums, fl)
pickle.dump(fam, fl)
fl.close()s
fl = open("okz.okz", "rb")
nums1 = pickle.load(fl)
print(nums1)
fam1 = pickle.load(fl)
print(fam1)
print("Файлы nums совпадают!") if nums == nums1 else print("Файлы nums не совпадают")
print("Файлы fam совпадают!") if fam == fam1 else print("Файлы fam не совпадают")
for i in range(125//5):
exec('list' + str(i) + '=' + str(list(nums1[i:i+5])))
list1
list3
Kоманды записаны в файл task.py