проблема заключается в том, что в вашей функции login_originup1
вы делаете три цикла while, от которых программа не может выйти из вашей функции, вы запрашиваете if login_orsignup1 != 1
без оператора else, поэтому, если пользователь хочет войти, он нажимает ввод в «1» программа скажет, что
"1" =! 1
ложно
, она будет искать оператор else, но не найдет его, поэтому вернется к началу цикла и попросить пользователя ввести еще раз. это для Первой петли.
Теперь, если пользователь вводит в «2» (что означает, что пользователь хочет зарегистрироваться), он заставит его войти в систему, потому что:
"2" =! 1
истинно
и будет перейдите к следующему циклу while, здесь вам будет предложено ввести имя пользователя, а пользователь предоставит имя пользователя. Теперь это для второго цикла
. Теперь мы переходим к последнему циклу, где вы запрашиваете пароль, и пользователь дает пароль. Программа либо 1. скажет, что она была ложной и снова запросит пароль, либо 2. она примет пароль и прервет цикл. Теперь это для третьего цикла
, так почему он спрашивает у меня имя пользователя? Потому что оператор break разрывает только тот цикл while, в котором он находится, так что оператор break разрывает только третий цикл while и возвращается к Второй цикл, который второй цикл снова вернет нам в третий цикл
, как это исправить?
просто так:
def login_originup1():
print('Welcome to password vault, You can either login or create a New account')
while True:
login_orsignu = input('Press\n1) to Log in\n2) to register a new account\n')
loopBreaker = 0
if loopBreaker:
break
if int(login_orsignu) != 1:
while True:
if loopBreaker:
break
username = input('What is your,\nUsername:')
if input_username == username:
l_p = input('What is your password ')
while True:
if loopBreaker:
break
if l_p == input_lockerpassword:
print("Password Correct")
loopBreaker = 1
break
Почему Вы не можете использовать обоих? Используя Emacs не означает, что необходимо прекратить использовать Vim.
Преимущества изучения и использования обоих:
Недостатки:
Я вижу, что преимущества перевешивают недостатки.
Я использую Emacs для кода Lisp, и потому что я использую Lisp для веб-разработки, я также остаюсь в Emacs для CSS и JavaScript и такого. Я использую Vim для Ruby, Python, Perl, PHP, Bash, простого текста и почти всего остального. У обоих редакторов есть достоинства и недостатки, но главным образом у обоих есть преимущества.
Единственный способ знать, нравятся ли Вам Vim или Emacs лучше, состоит в том, чтобы инвестировать время в обоих, таким образом, можно сделать обоснованное решение. Возможно, Вы найдете, что Emacs соответствует способу, которым Вы думаете и работаете лучше, или возможно нет. Именно такая субъективная вещь единственный способ знать путем попытки.
Текстовые редакторы не являются религиями, и свободное пространство на диске в Вашем мозгу, во всех отношениях, неограниченно. Так используйте обоих и наслаждайтесь.
Следует иметь в виду, что emacs имеет режим гадюки, который позволяет Вам продолжать использовать свои текущие vi привязки клавиш. Что касается вещи метаклавиши, я отобразил свою Caps Lock на ctrl и свой сдвиг вправо к высокому звуку и был довольно доволен им.
Это может быть легче: Плагин менеджера Vi Input (работает в XCode),
Единственная причина, которую я переключил бы на emacs (и я пробую время от времени) для замечательных elisp пакетов - конкретно все специальные режимы редактирования и режимы консоли/отладчика.
Я никогда не использовал XCode, но я предполагаю от Вашего вопроса, что это emacs привязки клавиш только. Т.е. Вы не можете использовать emacs пакет с XCode.
Так нет. Я сказал бы, не переключаются на emacs. Если Вы хотите использовать XCode или изучить привязки клавиш или использовать некоторый XCode vi режим (как был предложен другими).
Нет большой поддержки Emacs в Mac OS X и XCode. Это - главным образом несколько нажатий клавиш.
Mac OS X идет с версией программы Emacs. Очень хорошим Emacs для Mac OS X является Aquamacs.