#python #python-3.x
#python #python-3.x
Вопрос:
Моя оценка заключается в создании хранилища паролей с базовыми списками python, функциями во время циклов и т.д., Но у меня возникают проблемы с той стороны, где пользователь фактически вводит пароли для своих приложений. Первая проблема заключается в том, что они просят показать свои пароли, а у них нет ни одного, который следовало бы указать "you have nothing stored"
, он говорит это, но не перестает это повторять, а также поинтересовался, могу ли я получить некоторую помощь в завершении остальной части. вот как я хотел бы, чтобы эта часть кода выглядела с точки зрения ее использования.
Нажмите: 1) найдите существующие пароли 2) сохраните новый пароль для своих приложений 3) просмотрите сводку вашего хранилища паролей 4) успешно выйдите из хранилища паролей 2
Название веб-сайта: Facebook
Имя пользователя сайта: bob91
пароль сайта: bob95
вы хотели бы добавить другое приложение: да
Название веб-сайта: Instagram
Имя пользователя сайта: albert91
пароль сайта: albert95
вы хотели бы добавить другое приложение: нет
Нажмите: 1) найдите свои существующие пароли 2) сохраните новый пароль для своих приложений 3) просмотрите сводку вашего хранилища паролей 4) успешно выйдите из хранилища паролей 1 К какому приложению с паролем вы хотели бы получить доступ: Facebook Facebook
имя пользователя: bob91
пароль: bob95
————————————————— Мой фактический код прямо сейчас ->
vault_apps = []
app_name = ""
def locker_menu_func():
print('''You have opened the locker,
Please select what you would like to do,''')
while True:
locker_menu_var = input('''Press: n1) find your existing passwords n2) save a new password for your apps
3) see a summary of your password locke n4) exit password locker successfully
---------------------------------------------------------------------------------
''')
print('''----------------------------------------------------------------''')
if locker_menu_var == "1":
while len(vault_apps) < 1:
print('''you have nothing stored''')
break
break
elif locker_menu_var == "2":
app_name = input('''
What is the name of the website/app your are adding?
''')
app_password = input('''What is the password of your {} account?
'''.format(app_name))
vault_apps.append([app_name, app_password])
while True: another_app = input('''Would you like to add another app to your password locker?''')
if another_app in {"Y", "YES"}:
print("okay")
break
break
locker_menu_func()
Комментарии:
1. Некоторое время все повторяется, но вам нужно это только один раз, поэтому замените
while len(app_passwords) < 1
наif len(app_passwords) < 1
. Затем вы можете включитьbreak
в if-блок.2. В вашем
while Len(app_passwords) <1:
у вас нет возможности обновить свойapp_passwords
, поэтому вы создали бесконечный цикл. Сделайте отступbreak
ниже, чтобы устранить эту проблему.3. @BenT, теперь эта часть работает, спасибо, не могли бы вы помочь с остальным, я вроде как застрял
4. Вам следует попробовать это самостоятельно, и тогда вы сможете спросить, есть ли у вас конкретная проблема.
5. @Michael Butscher я пытался в течение 2 дней, на самом деле я не знаю, с чего начать и как это сделать, например, как добавить веб-сайт, имя пользователя и пароль в список, а затем показать пользователю, когда они спросят
Ответ №1:
Я использовал словарь для хранения пароля. Попробуйте это таким образом. Если это решило вашу проблему, пожалуйста, поддержите и сделайте это в качестве ответа.
app_passwords = {}
def locker_menu_func():
print('''You have opened the locker,
Please select what you would like to do,''')
while True:
locker_menu_var = input('''Press: n1) find your existing passwords n2) save a new password for your apps
3) see a summary of your password locke n4) exit password locker successfully''')
if locker_menu_var == "1":
while len(app_passwords) < 1:
print('''you hve nothing stored''')
break
else:
for kv in app_passwords.items():
a= kv[0],kv[1]
print(str(a).replace("(","").replace(")","").replace("[","").replace("]",""))
#print (app_passwords)
elif locker_menu_var == "2":
web = input("Enter Website")
username = input("Enter username")
password = input("Enter password")
app_passwords[web]=["username:" username "," "password:" password]
elif locker_menu_var == "3":
print ("Count of Websites stored",len(app_passwords))
elif locker_menu_var == "4":
break
locker_menu_func()
Комментарии:
1. привет, спасибо за вашу помощь, когда вы печатаете учетную запись, она печатается вот так, {‘facebook’: [‘имя пользователя: bob41, пароль: bob42’]} есть ли какой-нибудь способ улучшить ее представление, например, без всех скобок?
2. Отредактировано на основе вашего комментария
3. Я действительно ценю вашу помощь,, я действительно еще не выучил словарный код, как вы думаете, вы могли бы использовать списки вместо этого, потому что даже мой учитель будет удивляться, как я это сделал, также после того, как пользователь создал одну учетную запись, можете ли вы сделать так, чтобы он спрашивал, нужен ли ему другой код, я отредактировал свой фактический код, который я сейчас обновлю, если вы не возражаете помочь мне, возможно, исправить это?
4. Я просто решаю вашу проблему, а не выполняю всю вашу задачу. Если вы хотите выполнить свою задачу, обратитесь к Stackoverflow или к своему преподавателю и найдите решения. С помощью Google вы можете сделать это легко. Попробуйте сами
5. очевидно, что я могу сделать это сам, меня бы здесь не было, если бы я не пробовал себя, но иногда попытки самостоятельно не означают, что вы можете завершить это, я уже погуглил, был здесь последние 2 дня и не могу найти ничего, что действительно заставило бы мой код работать, я не могу спросить учителя, или самая высокая оценка, которую я могу получить, — это achived или в американской системе a «d»