форкнуто от main/python-labs
Вы не можете выбрать более 25 тем
Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
73 строки
4.9 KiB
Markdown
73 строки
4.9 KiB
Markdown
# Общее контрольное задание по теме 6
|
|
|
|
Анисенков Павел, А-01-23
|
|
|
|
## Задание
|
|
|
|
Придумайте инструкции и запишите их в файл с расширением .py , которые выполняют следующие операции:
|
|
• Создаётся объект-кортеж со 125 целыми случайными числами из диапазона от 6 до 56, представленными в виде символьных строк.
|
|
• Создаётся объект-список с вашей фамилией и 4 фамилиями ваших одноклассников.
|
|
• Записывается кортеж в бинарный файл.
|
|
• Записывается в этот же файл список и закрывается файл.
|
|
• Открывается этот файл для чтения и считывает из него данные в 2 новых объекта.
|
|
• Проверяется на совпадение новых объектов с исходными и выводится соответствующее сообщение.
|
|
• Разделяется кортеж на совокупности по 5 чисел в каждой и они записываются в виде отдельных списков со своими именами.
|
|
|
|
## Решение
|
|
|
|
```py
|
|
>>>import random
|
|
>>>import os
|
|
>>>import pickle
|
|
>>>str_kor = tuple(str(random.randint(6, 56)) for _ in range(125))
|
|
>>>str_kor
|
|
('27', '38', '7', '18', '35', '11', '41', '35', '20', '24', '43', '7', '48', '17', '26', '39', '35', '17', '54', '22', '31', '11', '8', '38', '7', '34', '22', '14', '36', '7', '15', '23', '48', '34', '31', '18', '39', '55', '18', '11', '32', '18', '51', '34', '41', '31', '8', '11', '28', '25', '42', '56', '10', '52', '6', '9', '15', '53', '36', '27', '48', '6', '53', '50', '51', '49', '11', '11', '16', '36', '39', '39', '18', '52', '14', '44', '13', '27', '26', '27', '23', '13', '36', '24', '34', '27', '21', '6', '37', '29', '53', '13', '54', '22', '26', '46', '36', '22', '48', '11', '24', '28', '9', '23', '36', '45', '6', '55', '9', '31', '22', '42', '50', '55', '46', '7', '55', '17', '54', '32', '39', '41', '14', '49', '22')
|
|
|
|
>>>L_fam = ["Anisenkov1", "Anisenkov2", "Anisenkov3", "Anisenkov4", "Anisenkov5"]
|
|
|
|
>>>os.chdir("C:\\Users\\Professional\\Desktop\\python-labs\\TEMA6")
|
|
|
|
>>>f = open('bin.mnz', 'wb')
|
|
>>>pickle.dump(str_kor, f)
|
|
>>>pickle.dump(L_fam, f)
|
|
>>>f.close()
|
|
|
|
>>>f = open('bin.mnz', 'rb')
|
|
>>>obj1 = pickle.load(f)
|
|
>>>obj2_spis = pickle.load(f)
|
|
>>>obj1
|
|
('27', '38', '7', '18', '35', '11', '41', '35', '20', '24', '43', '7', '48', '17', '26', '39', '35', '17', '54', '22', '31', '11', '8', '38', '7', '34', '22', '14', '36', '7', '15', '23', '48', '34', '31', '18', '39', '55', '18', '11', '32', '18', '51', '34', '41', '31', '8', '11', '28', '25', '42', '56', '10', '52', '6', '9', '15', '53', '36', '27', '48', '6', '53', '50', '51', '49', '11', '11', '16', '36', '39', '39', '18', '52', '14', '44', '13', '27', '26', '27', '23', '13', '36', '24', '34', '27', '21', '6', '37', '29', '53', '13', '54', '22', '26', '46', '36', '22', '48', '11', '24', '28', '9', '23', '36', '45', '6', '55', '9', '31', '22', '42', '50', '55', '46', '7', '55', '17', '54', '32', '39', '41', '14', '49', '22')
|
|
>>>obj2_spis
|
|
['Anisenkov1', 'Anisenkov2', 'Anisenkov3', 'Anisenkov4', 'Anisenkov5']
|
|
>>>if obj1 == str_kor:
|
|
print("обьекты кортежа совпадают")
|
|
else: print("обьекты кортежа не совпадают")
|
|
|
|
обьекты кортежа совпадают
|
|
|
|
>>>if obj2_spis == L_fam:
|
|
print("обьекты списка совпадают")
|
|
else: print("обьекты списка не совпадают")
|
|
|
|
обьекты списка совпадают
|
|
|
|
>>>List = []
|
|
>>>for i in range(0, 125, 5):
|
|
List.append(list(str_kor[i:i + 5]))
|
|
|
|
|
|
>>>List
|
|
[['27', '38', '7', '18', '35'], ['11', '41', '35', '20', '24'], ['43', '7', '48', '17', '26'], ['39', '35', '17', '54', '22'], ['31', '11', '8', '38', '7'], ['34', '22', '14', '36', '7'], ['15', '23', '48', '34', '31'], ['18', '39', '55', '18', '11'], ['32', '18', '51', '34', '41'], ['31', '8', '11', '28', '25'], ['42', '56', '10', '52', '6'], ['9', '15', '53', '36', '27'], ['48', '6', '53', '50', '51'], ['49', '11', '11', '16', '36'], ['39', '39', '18', '52', '14'], ['44', '13', '27', '26', '27'], ['23', '13', '36', '24', '34'], ['27', '21', '6', '37', '29'], ['53', '13', '54', '22', '26'], ['46', '36', '22', '48', '11'], ['24', '28', '9', '23', '36'], ['45', '6', '55', '9', '31'], ['22', '42', '50', '55', '46'], ['7', '55', '17', '54', '32'], ['39', '41', '14', '49', '22']]
|
|
|
|
>>>lists_dict = {}
|
|
>>>for i in range(25):
|
|
list_name = f"list{i + 1}"
|
|
lists_dict[list_name] = List[i]
|
|
|
|
>>>print(list1)
|
|
>>>print(list2)
|
|
|
|
['27', '38', '7', '18', '35']
|
|
['11', '41', '35', '20', '24']
|
|
```
|