diff --git a/TEMA6/Test.md b/TEMA6/Test.md new file mode 100644 index 0000000..4a0d9b3 --- /dev/null +++ b/TEMA6/Test.md @@ -0,0 +1,93 @@ +# Индивидуальное контрольное задание по модулю 2 + +Зеленкина Ксения А-02-23 +## Задание +1) Создайте словарь с 10 элементами: ключи - фамилии студентов, значения - целые, случайные числа в диапазоне от 1 до 100. +2) Запишите словарь в бинарный файл. +3) Удалите словарь из памяти. +4) Прочитайте словарь из файла и удалите из него два элемента: первого и последнего студента. +5) Выведите на экран элементы полученного словаря в виде строк по шаблону: "Студент <ключ из словаря> : <значение из словаря>" + + +## Решение +#### 1. +Создайте словарь с 10 элементами: ключи - фамилии студентов, значения - целые, случайные числа в диапазоне от 1 до 100. +```py +import pickle +import random +sl = {"Беженарь": random.randint(1, 100), + "Володин": random.randint(1, 100), + "Добровольска": random.randint(1, 100), + "Ефремов": random.randint(1, 100), + "Зеленкина": random.randint(1, 100), + "Зеленкина2": random.randint(1, 100), + "Капитонов": random.randint(1, 100), + "Киреев": random.randint(1, 100), + "Коломейцев": random.randint(1, 100), + "Криви": random.randint(1, 100)} +``` + +#### 2. +Запишите словарь в бинарный файл. +__Способ 1 (как в лр):__ +_Код:_ +```py +fl=open('test.mnz','wb') +pickle.dump(sl, fl) +``` +__Способ 2 (как в методичке):__ +_Код:_ +```py +with open('test.mnz', 'wb') as file: + pickle.dump(sl, fl) +``` + + +#### 3. +Удалите словарь из памяти. +_Код:_ +```py +del sl +``` + +#### 4. +Прочитайте словарь из файла и удалите из него два элемента: первого и последнего студента. +_Код:_ +```py +with open('test.mnz', 'rb') as fl: + rsl = pickle.load(fl) +``` +Выведим первый и последний элемент и удалим их +_Код:_ +```py +print(list(rsl.keys())[0]) +print(list(rsl.keys())[-1]) + +del rsl[list(rsl.keys())[0]] +del rsl[list(rsl.keys())[-1]] +``` + +_Вывод:_ +```py +Беженарь +Криви +``` + +#### 5. +Выведите на экран элементы полученного словаря в виде строк по шаблону: "Студент <ключ из словаря> : <значение из словаря>" +_Код:_ +```py +for i in rsl: + print(f"Студент {i}", rsl[i], sep =': ') +``` +_Вывод:_ +```py +Студент Володин: 4 +Студент Добровольска: 10 +Студент Ефремов: 46 +Студент Зеленкина: 80 +Студент Зеленкина2: 75 +Студент Капитонов: 36 +Студент Киреев: 90 +Студент Коломейцев: 5 +``` \ No newline at end of file diff --git a/TEMA6/Test.py b/TEMA6/Test.py new file mode 100644 index 0000000..a2fbb15 --- /dev/null +++ b/TEMA6/Test.py @@ -0,0 +1,41 @@ +# Индивидуальное контрольное задание + +## 1 +import pickle +import random +sl = {"Беженарь": random.randint(1, 100), + "Володин": random.randint(1, 100), + "Добровольска": random.randint(1, 100), + "Ефремов": random.randint(1, 100), + "Зеленкина": random.randint(1, 100), + "Зеленкина2": random.randint(1, 100), + "Капитонов": random.randint(1, 100), + "Киреев": random.randint(1, 100), + "Коломейцев": random.randint(1, 100), + "Криви": random.randint(1, 100)} + +## 2 +# Как в лр +fl=open('test.mnz','wb') +pickle.dump(sl, fl) + +# +# with open('test.mnz', 'wb') as file: +# pickle.dump(sl, fl) + +# 3 +del sl + +# 4 +with open('test.mnz', 'rb') as fl: + rsl = pickle.load(fl) +# Выведим первое и последнее значение словаря +print(list(rsl.keys())[0]) +print(list(rsl.keys())[-1]) +# Удалим +del rsl[list(rsl.keys())[0]] +del rsl[list(rsl.keys())[-1]] + +# 5 +for i in rsl: + print(f"Студент {i}", rsl[i], sep =': ') \ No newline at end of file diff --git a/TEMA6/phototest.png b/TEMA6/phototest.png new file mode 100644 index 0000000..c3e6547 Binary files /dev/null and b/TEMA6/phototest.png differ diff --git a/TEMA6/test.mnz b/TEMA6/test.mnz new file mode 100644 index 0000000..de8052a Binary files /dev/null and b/TEMA6/test.mnz differ diff --git a/TEMA6/zapis6.mnz b/TEMA6/zapis6.mnz index 68f33e0..2c76364 100644 Binary files a/TEMA6/zapis6.mnz and b/TEMA6/zapis6.mnz differ diff --git a/TEMA6/zapis7.2ob b/TEMA6/zapis7.2ob index e446994..387f56e 100644 Binary files a/TEMA6/zapis7.2ob and b/TEMA6/zapis7.2ob differ