From 35176277bd0c025c3d2518a03e8852ec4e5d9835 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=D0=9F=D0=BE=D0=BB=D1=8C=D0=B7=D0=BE=D0=B2=D0=B0=D1=82?= =?UTF-8?q?=D0=B5=D0=BB=D1=8C=20=E2=84=96=2011=20=D0=B0=D1=83=D0=B4=D0=B8?= =?UTF-8?q?=D1=82=D0=BE=D1=80=D0=B8=D0=B8=20=D0=9A-522?= Date: Mon, 17 Nov 2025 12:36:54 +0300 Subject: [PATCH] =?UTF-8?q?=D0=B2=D1=8B=D0=BF=D0=BE=D0=BB=D0=BD=D0=B5?= =?UTF-8?q?=D0=BD=D0=B8=D0=B5=20=D0=98=D0=9A=D0=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- TEMA6/test.md | 103 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 103 insertions(+) create mode 100644 TEMA6/test.md diff --git a/TEMA6/test.md b/TEMA6/test.md new file mode 100644 index 0000000..63d3ffc --- /dev/null +++ b/TEMA6/test.md @@ -0,0 +1,103 @@ +# Индивидуальное контрольное задание по теме 6 + +Криви Анастасия, А-02-23 +Вариант 4 + +## Задание + +1) Создайте словарь с 7 элементами, в которых ключами являются логины пользователей, а значениями - их пароли. + +2) Запросите у пользователя логин и пароль, проверьте их наличие в качестве элемента словаря. Если такой элемент найден, выдайте сообщение "Access granted", иначе - "Access denied". + +3) Запишите словарь в бинарный файл и после этого удалите словарь из памяти. + +4) Прочитайте словарь из файла. Отобразите его на экране. + +5) Запросите у пользователя логин и пароль нового пользователя и добавьте соответствующий элемент в словарь. + +## Выполнение + +Создание словаря с семью элементами, в которых ключи - логины пользователей, а значения - их паролив соотвествии. +```py +clov={'ac':'123','as':'124','az':'125', 'ax':'126', 'aw':'127', 'af':'128', 'an':'129'} +``` +Ввод информации от пользователя - логин и пароль. +```py +log=input('Введите ваш логин: ') +Введите ваш логин: ac +pas=input('Введите ваш пароль: ') +Введите ваш пароль: 123 +``` +Проверка наличия пользователя в системе, то есть существуют ли вводимые значения в созданной нами словаре: +```py +if (log in clov)and (clov[log] == pas): + print('Access granted') +else: + print('Access denied') + + +Access granted +``` +Изменение вводимых значений и повторная проверка. +```py +log=input('Введите ваш логин: ') +Введите ваш логин: ac +pas=input('Введите ваш пароль: ') +Введите ваш пароль: 12 + +if (log in clov)and (clov[log] == pas): + print('Access granted') +else: + print('Access denied') + + +Access denied +``` +Запись словаря с данными пользователей в бинарный файл. +```py +with open('clov.txt','wb')as fp: + pickle.dump(clov, fp) +``` +Удаление словаря из памяти. +```py +del clov +``` +Полученный бинарный файл с словарем +```py +Ђ•R }”(Њac”Њ123”Њas”Њ124”Њaz”Њ125”Њax”Њ126”Њaw”Њ127”Њaf”Њ128”Њan”Њ129”u. +``` +Чтение словаря и его отображение на экране. +```py +with open('clov.txt','rb')as fp: + nclov=pickle.load(fp); print(nclov) +``` +Ввод новых данных пользователя - логин и пароль. Добавление их в словарь +```py +nlog=input('Введите новый логин: ') +npas=input('Введите новый пароль: ') +nclov[nlog] = npas; +``` +Полученный код с решением варианта. +```py +import pickle +import os +clov={'ac':'123','as':'124','az':'125', 'ax':'126', 'aw':'127', 'af':'128', 'an':'129'} + +log=input('Введите ваш логин: ') +pas=input('Введите ваш пароль: ') + +if (log in clov)and (clov[log] == pas): + print('Access granted') +else: + print('Access denied') + +with open('clov.txt','wb')as fp: + pickle.dump(clov, fp) +del clov +with open('clov.txt','rb')as fp: + nclov=pickle.load(fp); print(nclov) + +nlog=input('Введите новый логин: ') +npas=input('Введите новый пароль: ') +nclov[nlog] = npas; +``` \ No newline at end of file