Python ile Şifre Inputu Nasıl Yıldızlı Olarak Yazılır?

Arkadaşlar merhaba, kullanıcıdan bir kullanıcı adı ve şifre almam gerekiyor. Şifre kısmını nasıl yıldızlı olarak alabilirim? Terminalden her harfe bastığında yıldız çıkmasını istiyorum. Şimdiden teşekkürler.

1 Beğeni

Yıldızlı nasıl yapılır bilmiyorum fakat, yazıyı hiç göstermeden nasıl yapılır biliyorum.

import getpass

sifre = getpass("Şifre: ")

Bu kodla yıldızsız ve şifreyi göstermeden yapabilirsiniz.

1 Beğeni
getpass.getpass("Şifre: ") 

şeklinde olmalı.

Dediğim yöntem bende çalışıyor. Yani ek olarak bir tane getpass eklemeye gerek yok. Ama tabii ki çalışıyorsa, ek olarak bir tane eklemekten ne olabilir ki :slight_smile:

1 Beğeni

Maalesef böyle bir hata aldım.

Hocam tek getpass yapın.

sifre = getpass("Şifre: ")

i3 ortamı mı bu masaüstü?

Maalesef bunda da bu şekilde kalıyor.

Modülü yüklediniz değil mi?

Yüklemediyseniz: pip install getpass

Pycharm yüksek karşıtlık teması. Windows 10.

1 Beğeni

Evet yükledim. Paket aktarımında bir sorun yok.

Ayrıca p değişkenine değer atamamışsınız? Sanırım o p , sifre olacaktı.

Aynı şekilde sifre diye ekledim p yerine fakat hala aynı. Pycharm terminalden kaynaklı olma ihtimali var mı?

Arkadaşlar evet sorun Pycharm yüzündenmiş. Eğer aynı sorunu alır iseniz Run-Edit Configuration diyerek “Emulate terminal in output console” seçeneğini seçiniz düzelecektir. Herkese teşekkür ederim.

sifre = getpass("Şifre: ")

Bu kod ile de istediğim şey yapılabilmekte.

2 Beğeni
pip3 install getch

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())

Alıntı: https://stackoverflow.com/a/62295025/16291589

4 Beğeni

Bu soru daha önce sorulmuştu:

2 Beğeni