форкнуто от main/python-labs
main
Родитель
4b2adba302
Сommit
72a1506ffb
@ -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)
|
||||||
|
```
|
||||||
|
<img src = "./phototest.png" width="500" height="300" align="center">
|
||||||
|
|
||||||
|
#### 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
|
||||||
|
```
|
||||||
@ -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 =': ')
|
||||||
|
После Ширина: | Высота: | Размер: 3.0 KiB |
Двоичный файл не отображается.
Двоичный файл не отображается.
Двоичный файл не отображается.
Загрузка…
Ссылка в новой задаче