Random şifre oluşturucu

Arkadaşlar herkese iyi forumlar . Ben tam olarak wordlist generator olmasada ona benzer bir şey yapmaya çalışıyorum . Kullanıcı şifrelerin kaç haneden oluşmasını istediğini giriyor mesela 3 diyelim . Ve bu şifreler sadece numaralardan oluşucak kombinasyon hesabından 10 üzeri 3 1000 tane olasılık var . Ve uygulama da rastgele şifre oluşturucak ve tekrar 1000 olasıya kadar devam edicek . Fakat hane sayısını girdikten sonra program hiç tepki vermiyor öylece kalıyor yardım edebilecek var mı ?

from random import choice

hane = int(input("Şifrenizin kaç haneli olsun ? : "))

numaralar = [“0”,“1”,“2”,“3”,“4”,“5”,“6”,“7”,“8”,“9”]

sifre = “”

i = “”
v = 0
olasılık = pow(10, hane)

while v <= olasılık:

for i in range(hane):
sifre += str(choice(numaralar))
print(sifre)

v += 1

Neden olası durumları sen hesaplıyorsun ki? Bırak Python senin yerine saysın.

import string
from itertools import permutations

numaralar = list(string.digits)
# numaralar = [0,1,2,3,4,5,...9]

hane = 3  # Bunu inpıu() 'dan aldığını düşün
n = 0

for password in permutations(numaralar, hane):
    n += 1
    print(''.join(password))

print(n, " kere denendi")
012
013
014
015
016
017
018
019
021
....
982
983
984
985
986
987
720  kere denendi

buradaki permutations fonksiyonu matematikte olan ile aynı işlemi yapıyor. Gördüğün gibi 720 tane olası durum. Bunun nedeni numaraların 1’li ve 2’li permutasyonlarının hesaba katılmamış olması. Bunları senin yapabileceğini düşünüyorum.

pythonda yeniyim fazla kütüphane bilmiyorum hem benim yaptığım biraz daha homemade gibi geldi benimkini düzeltmenin yolu yok mu ?

Seninki okunamiyor malesef. Oncelikle duzeltmen lazim: