Tkinter kütüphanesi ile bunu yapabilirsiniz. Devam butonuna basıldığında ‘devam’ fonksiyonu çalışacak ve global ‘şifre’ değişkeni kullanıcının girdiği şifreye eşit olacak.
Veya curses ile terminal üzerinde de şifrenizi yıldız işareti ile gizleyebilirsiniz. Ancak aşağıdaki kodlara biraz ekleme yapmanız gerekir çünkü terminalin davranışını baştan programlıyorsunuz. Yani karakter silme tuşunu, yön tuşlarını baştan tanımlamanız gerekir.
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import curses
stdscr = curses.initscr()
curses.raw()
curses.noecho()
q = -1
x, y = 0, 0
chars = ""
def pass_iste():
global x
for i, j in enumerate("password:"):
stdscr.addstr(y, i, j)
x = i + 1
pass_iste()
while q != ord("q"):
q = stdscr.getch()
stdscr.addstr(y, x, "*")
if q == 10:
x = 0
y += 1
if "merhaba" == chars:
break
else:
stdscr.addstr(y, x, "Şifre yanlış girildi.")
chars = ""
y += 1
pass_iste()
else:
chars += chr(q)
x += 1
curses.endwin()
print("Şifre başarıyla girildi.")