форкнуто от main/python-labs
Вы не можете выбрать более 25 тем
Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
53 строки
2.0 KiB
Markdown
53 строки
2.0 KiB
Markdown
# Индивидуальное контрольное задание по теме 8
|
|
Степанов Артём, А-02-23
|
|
|
|
## Задание
|
|
|
|
Вариант 23
|
|
|
|
о указанному преподавателем варианту контрольного задания обратитесь к индивидуальному заданию с таким номером в теме 7,разработайте функцию, на ее основе создайте модуль.
|
|
Создайте второй модуль, в котором должны быть инструкции для ввода/создания исходных данных для проверки работы функции, вызов функции и отображение полученных результатов.
|
|
|
|
|
|
## Решение
|
|
|
|
```py
|
|
>>> # Содержимое Module1
|
|
>>>
|
|
def createDict(N, D, G):
|
|
import random, pickle
|
|
dictionary = {}
|
|
for i in range(1, N + 1):
|
|
dictionary[f"{i}"] = random.uniform(D, G)
|
|
fp = open("SLOV.bin", "wb")
|
|
pickle.dump(dictionary, fp)
|
|
fp.close()
|
|
print("Словарь записан в файл SLOV.bin")
|
|
mean = sum(dictionary.values()) / N
|
|
return [dictionary, mean]
|
|
>>>
|
|
>>> # Содержимое Module2
|
|
>>>
|
|
import os, pickle, Module1
|
|
[dict1, mean1] = Module1.createDict(3, 1, 2)
|
|
print("dict1:\n", dict1)
|
|
print("mean1:\n", mean1)
|
|
fp = open("SLOV.bin", "rb")
|
|
newDict = pickle.load(fp)
|
|
fp.close()
|
|
print("newDict:\n", newDict)
|
|
print("newDict == dict1:", newDict == dict1)
|
|
>>>
|
|
>>> # Проверка работы программы
|
|
>>>
|
|
>>> import os, Module2
|
|
>>> os.chdir("C:\\Users\\u206-02\\Desktop\\StepanovAV\\python-labs\\TEMA8\\test")
|
|
Словарь записан в файл SLOV.bin
|
|
dict1:
|
|
{'1': 1.0653389372248743, '2': 1.805070977698345, '3': 1.4527430077132846}
|
|
mean1:
|
|
1.4410509742121682
|
|
newDict:
|
|
{'1': 1.0653389372248743, '2': 1.805070977698345, '3': 1.4527430077132846}
|
|
newDict == dict1: True
|
|
``` |