답변:
from getpass import getpass
password = getpass()
선택적 프롬프트는 매개 변수로 전달 될 수 있습니다. 기본값은 "Password: "
입니다.
이 기능에는 적절한 터미널이 필요하므로 입력 된 문자의 에코를 끌 수 있습니다 . 자세한 내용 은 IDLE에서 실행할 때“GetPassWarning : 터미널의 에코를 제어 할 수 없음”을 참조하십시오.
getpass()
은 아무도 소스 코드를보고 암호를 읽음으로써 암호를 찾을 수 없도록하고, 입력 할 때 어깨 너머로 쳐다 보면서 화면에서 암호를 읽음으로써 아무도 암호를 얻을 수 없다는 것입니다.
import getpass
pswd = getpass.getpass('Password:')
getpass 는 Linux, Windows 및 Mac에서 작동합니다.
import sys
) : getpass.getpass(
<문자열>,sys.stderr)
이 코드는 모든 문자 대신 별표를 인쇄합니다.
import sys
import msvcrt
passwor = ''
while True:
x = msvcrt.getch()
if x == '\r':
break
sys.stdout.write('*')
passwor +=x
print '\n'+passwor
getpass
대답을 반복하지는 않습니다 . 좋음
#!/usr/bin/python3
from getpass import getpass
passwd = getpass("password: ")
print(passwd)
@Ahmed ALaa의 답변 업데이트
# import msvcrt
import getch
def getPass():
passwor = ''
while True:
x = getch.getch()
# x = msvcrt.getch().decode("utf-8")
if x == '\r' or x == '\n':
break
print('*', end='', flush=True)
passwor +=x
return passwor
print("\nout=", getPass())
msvcrt는 Windows의 경우에만 우리에게 있지만 PyPI의 getch 는 두 가지 모두 작동합니다 (Linux로만 테스트했습니다). 두 줄을 주석 처리하거나 주석 처리를 제거하여 창에서 작동하도록 할 수도 있습니다.