ответвлено от main/python-labs
Module Test
Этот коммит содержится в:
78
TEMA6/TEMA6test.md
Обычный файл
78
TEMA6/TEMA6test.md
Обычный файл
@@ -0,0 +1,78 @@
|
||||
# Тест по модулю 3
|
||||
|
||||
Вариант 13
|
||||
|
||||
## Задание
|
||||
|
||||
1)Создайте множество с 15 элементами - целыми нечетными уникальными числами в диапазоне значений от 147 до 263.
|
||||
|
||||
2) Запросите у пользователя имя файла для вывода и запишите множество в бинарный файл с заданным именем.
|
||||
|
||||
3) Уберите из памяти ранее созданное множество.
|
||||
|
||||
4) Прочитайте из бинарного файла множество в новый объект.
|
||||
|
||||
5) Превратите введенное множество в список, упорядоченный по возрастанию его элементов. Отобразите список на экране по шаблону: "элемент №<номер элемента> = <значение элемента>"
|
||||
|
||||
|
||||
## Решение
|
||||
|
||||
```py
|
||||
# 1)Создайте множество с 15 элементами - целыми нечетными уникальными числами в диапазоне значений от 147 до 263.
|
||||
import random
|
||||
mnoz = set()
|
||||
while len(mnoz) < 15:
|
||||
number = random.randint(147, 263)
|
||||
if number % 2 == 1: mnoz.add(number)
|
||||
mnoz
|
||||
{161, 259, 163, 195, 231, 199, 201, 171, 239, 243, 181, 245, 217, 221, 255}
|
||||
|
||||
# 2) Запрашиваем имя файла и записываем множество в бинарный файл
|
||||
whatfile = input('Введите имя файла, в который запишется множество: ')
|
||||
Введите имя файла, в который запишется множество: filefin.bin
|
||||
import pickle
|
||||
f1 = open(whatfile, 'wb')
|
||||
pickle.dump(mnoz, f1)
|
||||
f1.close()
|
||||
|
||||
# Просмотрим, что внутри:
|
||||
Ђ•$ Џ”(KЎMKЈKГKзKЗKЙK«KпKуKµKхKЩKЭKяђ.
|
||||
|
||||
# 3) Удаляем множество из памяти
|
||||
del mnoz
|
||||
|
||||
# 4) Читаем множество из бинарного файла
|
||||
f1 = open(whatfile, 'rb')
|
||||
mnoz1 = pickle.load(f1)
|
||||
mnoz1
|
||||
{161, 259, 163, 195, 231, 199, 201, 171, 239, 243, 181, 245, 217, 221, 255}
|
||||
f1.close()
|
||||
|
||||
|
||||
# 5) Преобразуем множество в отсортированный список и выводим по шаблону
|
||||
newlist = list(mnoz1)
|
||||
newlist
|
||||
[161, 259, 163, 195, 231, 199, 201, 171, 239, 243, 181, 245, 217, 221, 255]
|
||||
sortedlist = sorted(newlist)
|
||||
sortedlist
|
||||
[161, 163, 171, 181, 195, 199, 201, 217, 221, 231, 239, 243, 245, 255, 259]
|
||||
for i in sortedlist:
|
||||
print('Элемент №', sortedlist.index(i) + 1, ' = ', i)
|
||||
|
||||
|
||||
Элемент № 1 = 161
|
||||
Элемент № 2 = 163
|
||||
Элемент № 3 = 171
|
||||
Элемент № 4 = 181
|
||||
Элемент № 5 = 195
|
||||
Элемент № 6 = 199
|
||||
Элемент № 7 = 201
|
||||
Элемент № 8 = 217
|
||||
Элемент № 9 = 221
|
||||
Элемент № 10 = 231
|
||||
Элемент № 11 = 239
|
||||
Элемент № 12 = 243
|
||||
Элемент № 13 = 245
|
||||
Элемент № 14 = 255
|
||||
Элемент № 15 = 259
|
||||
```
|
||||
Ссылка в новой задаче
Block a user