Использование getpass с Sublime Text
Как и в заголовке, я пытаюсь использовать библиотеку getpass с возвышенным текстом (и SublimeREPL.) Когда я запускаю простой фрагмент кода, я получаю только пустой экран в терминале Sublime и терминале REPL. Есть ли способ заставить getpass работать с возвышенным текстом? Я запустил тот же код в PowerShell Python, и он работал просто отлично.
import getpass
psswd = getpass.getpass(prompt = 'Password:')
1 ответ
Нет. Превосходный текст предоставляет основные функции терминала, а не фактический полный терминал.
Поскольку некоторые из основных компонентов терминалов не воспроизводятся в REPL или Sublime, вы не можете запустить getpass
правильно из них.
Лучше всего придерживаться CMD или PowerShell.
Аналогично для Python IDLE:
>>> import getpass
>>> psswd = getpass.getpass(prompt = 'Password:')
Warning (from warnings module):
File "C:\Users\Simon\AppData\Local\Programs\Python\Python36-32\lib\getpass.py", line 100
return fallback_getpass(prompt, stream)
GetPassWarning: Can not control echo on the terminal.
Warning: Password input may be echoed.
Password:
Документация Python предупреждает вас об этом:
Если ввод без эха недоступен, getpass() возвращается к печати предупреждающего сообщения для потоковой передачи и чтению из sys.stdin и выдаче GetPassWarning.