3.9 KiB
Индивидуальное контрольное задание по теме 6
Криви Анастасия, А-02-23 Вариант 4
Задание
-
Создайте словарь с 7 элементами, в которых ключами являются логины пользователей, а значениями - их пароли.
-
Запросите у пользователя логин и пароль, проверьте их наличие в качестве элемента словаря. Если такой элемент найден, выдайте сообщение "Access granted", иначе - "Access denied".
-
Запишите словарь в бинарный файл и после этого удалите словарь из памяти.
-
Прочитайте словарь из файла. Отобразите его на экране.
-
Запросите у пользователя логин и пароль нового пользователя и добавьте соответствующий элемент в словарь.
Выполнение
Создание словаря с семью элементами, в которых ключи - логины пользователей, а значения - их паролив соотвествии.
clov={'ac':'123','as':'124','az':'125', 'ax':'126', 'aw':'127', 'af':'128', 'an':'129'}
Ввод информации от пользователя - логин и пароль.
log=input('Введите ваш логин: ')
Введите ваш логин: ac
pas=input('Введите ваш пароль: ')
Введите ваш пароль: 123
Проверка наличия пользователя в системе, то есть существуют ли вводимые значения в созданной нами словаре:
if (log in clov)and (clov[log] == pas):
print('Access granted')
else:
print('Access denied')
Access granted
Изменение вводимых значений и повторная проверка.
log=input('Введите ваш логин: ')
Введите ваш логин: ac
pas=input('Введите ваш пароль: ')
Введите ваш пароль: 12
if (log in clov)and (clov[log] == pas):
print('Access granted')
else:
print('Access denied')
Access denied
Запись словаря с данными пользователей в бинарный файл.
with open('clov.txt','wb')as fp:
pickle.dump(clov, fp)
Удаление словаря из памяти.
del clov
Полученный бинарный файл с словарем
Ђ•R }”(Њac”Њ123”Њas”Њ124”Њaz”Њ125”Њax”Њ126”Њaw”Њ127”Њaf”Њ128”Њan”Њ129”u.
Чтение словаря и его отображение на экране.
with open('clov.txt','rb')as fp:
nclov=pickle.load(fp); print(nclov)
Ввод новых данных пользователя - логин и пароль. Добавление их в словарь
nlog=input('Введите новый логин: ')
npas=input('Введите новый пароль: ')
nclov[nlog] = npas;
Полученный код с решением варианта.
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;