форкнуто от main/python-labs
Вы не можете выбрать более 25 тем
Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
70 строки
4.1 KiB
Markdown
70 строки
4.1 KiB
Markdown
# Общее контрольное задание по теме 6
|
|
Голощапов Дмитрий, А-01-23
|
|
|
|
# Задание
|
|
|
|
Придумайте инструкции и запишите их в файл с расширением .py , которые выполняют следующие операции:
|
|
|
|
• Создаётся объект-кортеж со 125 целыми случайными числами из диапазона от 6 до 56, представленными в виде символьных строк.
|
|
|
|
• Создаётся объект-список с вашей фамилией и 4 фамилиями ваших одноклассников.
|
|
|
|
• Записывается кортеж в бинарный файл.
|
|
|
|
• Записывается в этот же файл список и закрывается файл.
|
|
|
|
• Открывается этот файл для чтения и считывает из него данные в 2 новых объекта.
|
|
|
|
• Проверяется на совпадение новых объектов с исходными и выводится соответствующее сообщение.
|
|
|
|
• Разделяется кортеж на совокупности по 5 чисел в каждой и они записываются в виде отдельных списков со своими именами.
|
|
|
|
# Решение
|
|
|
|
>>> import random
|
|
>>> tpl= tuple(str(random.randint(6, 56)) for x in range(125))
|
|
>>> tpl
|
|
('51', '16', '55', '38', '10', '26', '47', '26', '50', '31', '55', '39', '40', '54', '41', '14', '42', '19', '33', '28', '22', '38', '19', '34', '8', '50', '19', '24', '8', '18', '23', '19', '54', '32', '6', '6', '9', '22', '36', '54', '15', '35', '48', '45', '10', '30', '43', '21', '42', '11', '53', '10', '39', '12', '10', '36', '27', '24', '53', '14', '16', '54', '18', '15', '42', '49', '53', '25', '11', '21', '12', '41', '43', '36', '38', '54', '50', '14', '24', '33', '9', '37', '6', '15', '39', '48', '48', '24', '43', '54', '19', '32', '48', '14', '23', '35', '29', '20', '26', '38', '30', '43', '15', '54', '21', '21', '12', '22', '46', '23', '42', '47', '31', '40', '40', '28', '31', '29', '7', '16', '27', '9', '32', '30', '45')
|
|
|
|
>>> L_fam = ["Goloshchapov", "Filipov", "Ivanov", "Tabolin", "Lazarev"]
|
|
|
|
|
|
>>> import os
|
|
>>> os.chdir('C:\\Users\\Дмитрий\\OneDrive\\Рабочий стол\\Goloshchapov\\python-labs\\TEMA6')
|
|
>>> f = open('bin.mnz', 'wb')
|
|
>>> import pickle
|
|
>>> pickle.dump(tpl, f)
|
|
>>> pickle.dump(L_fam, f)
|
|
>>> f.close()
|
|
|
|
|
|
>>> f = open('bin.mnz', 'rb')
|
|
>>> obj1 = pickle.load(f)
|
|
>>> obj2_spis = pickle.load(f)
|
|
>>> obj1
|
|
('51', '16', '55', '38', '10', '26', '47', '26', '50', '31', '55', '39', '40', '54', '41', '14', '42', '19', '33', '28', '22', '38', '19', '34', '8', '50', '19', '24', '8', '18', '23', '19', '54', '32', '6', '6', '9', '22', '36', '54', '15', '35', '48', '45', '10', '30', '43', '21', '42', '11', '53', '10', '39', '12', '10', '36', '27', '24', '53', '14', '16', '54', '18', '15', '42', '49', '53', '25', '11', '21', '12', '41', '43', '36', '38', '54', '50', '14', '24', '33', '9', '37', '6', '15', '39', '48', '48', '24', '43', '54', '19', '32', '48', '14', '23', '35', '29', '20', '26', '38', '30', '43', '15', '54', '21', '21', '12', '22', '46', '23', '42', '47', '31', '40', '40', '28', '31', '29', '7', '16', '27', '9', '32', '30', '45')
|
|
>>> obj2_spis
|
|
['Goloshchapov', 'Filipov', 'Ivanov', 'Tabolin', 'Lazarev']
|
|
|
|
|
|
>>> if obj1 == tpl:
|
|
... print("обьекты кортежа совпадают")
|
|
... else: print("обьекты кортежа не совпадают")
|
|
...
|
|
обьекты кортежа совпадают
|
|
>>> if obj2_spis == L_fam:
|
|
print("обьекты списка совпадают")
|
|
else: print("обьекты списка не совпадают")
|
|
|
|
обьекты списка совпадают
|
|
|
|
>>> for i in range(0, 125, 5):
|
|
... exec('list' + str(i//5+1) + ' = ' + str(list(obj1[i:i+5])))
|
|
...
|
|
...
|
|
>>> list1
|
|
['51', '16', '55', '38', '10']
|
|
>>> list2
|
|
['26', '47', '26', '50', '31']
|
|
|
|
|