- 8 Ocak 2017
- 140
- 2
Öncelikle sürekli aynı şeyleri tekrarlamak mantığa uygun değil bunu biliyorum. Daha kısa bir yolu elbette vardır. ama bu tarz bir yazımdaki hata nerededir söylerseniz sevinirim kodu çalıştırınca görürsünüz zaten kodların hiç biri çalışmıyor :gülenyüz: nasıl bir işlemle iyileştirebilirim
Hatalarımı buldum kapatmaya çalıştım daha kısa yöntemler bulanlar varsa dm atabilir açığım bu tarz şeylere. çalışanını şu şekilde yaptım benim gibi hatayı bulamayanlar şu şekilde yapabilir
Kod:
import random
import string
karısıkharf = string.ascii_letters
rakam = string.digits
sembol = string.punctuation
kucukharf = string.ascii_lowercase
buyukharf = string.ascii_uppercase
secim = """
^^^^^^^^^^^^^^^^^__________________^^^^^^^^^^^^^^^^^
Şifrenizin özelliklerini size sunacağımız ekrandan girin
ve istediğiniz şifreyi istediğiniz özellikle oluşturunuz.
^^^^^^^^^^^^^^^^____________________^^^^^^^^^^^^^^^^^
"""
print(secim)
select = input("Şifrenizde rakam olmasını ister misiniz ? , Evet Veya Hayır yazmanız yeterlidir: ")
x = input("Şifreinizde büyük küçük harf karışık olmasını ister misiniz ? , Evet Veya Hayır yazmanız yeterli: ")
y = input("Şifreniz büyük harfli karakterlerden mi,küçük harfli karakterlerden mi oluşsun: 1-) Büyük Harf, 2-) Küçük harf: ")
a = input("Şifrenizde sembol olsun mu ?, Evet veya Hayır yazmanız yeterlidir: ")
b = input("Son olarak şifrenizin uzunluğunu belirtiniz: 1-)(0,8) , 2-)(8,16): ")
password = ""
if select=="Evet":
password = "".join(random.choice(rakam))
elif select=="Hayır":
print("Seçeneğiniz seçildi.")
else:
print("E harfini veya H harfini büyük yazdığınızdan emin olun.")
if x=="Evet":
password = "".join(random.choice(karısıkharf))
elif x=="Hayır":
print("Seçeneğiniz seçildi.")
else:
print("E harfini veya H harfini büyük yazdığınızdan emin olun.")
if y=="1":
password = "".join(random.choice(buyukharf))
elif y=="2":
password = "".join(random.choice(kucukharf))
elif y != "1" or "2":
print("Lüten 1 veya 2 yi seçiniz.")
else:
print("Seçeneğiniz seçildi.")
if a=="Evet":
password += random.choice(sembol)
elif a=="Hayır":
print("Seçeneğiniz seçildi.")
else:
print("E harfini veya H harfini büyük yazdığınızdan emin olun.")
if b=="1":
password == range(0,8)
elif b=="2":
password == range(8,16)
else:
print("1 veya 2 yi tuşlayın aksi takdirde bu hatayı alırsınız.")
print(password)
Öncelikle sürekli aynı şeyleri tekrarlamak mantığa uygun değil bunu biliyorum. Daha kısa bir yolu elbette vardır. ama bu tarz bir yazımdaki hata nerededir söylerseniz sevinirim kodu çalıştırınca görürsünüz zaten kodların hiç biri çalışmıyor :gülenyüz: nasıl bir işlemle iyileştirebilirim
Kod:import random import string karısıkharf = string.ascii_letters rakam = string.digits sembol = string.punctuation kucukharf = string.ascii_lowercase buyukharf = string.ascii_uppercase secim = """ ^^^^^^^^^^^^^^^^^__________________^^^^^^^^^^^^^^^^^ Şifrenizin özelliklerini size sunacağımız ekrandan girin ve istediğiniz şifreyi istediğiniz özellikle oluşturunuz. ^^^^^^^^^^^^^^^^____________________^^^^^^^^^^^^^^^^^ """ print(secim) select = input("Şifrenizde rakam olmasını ister misiniz ? , Evet Veya Hayır yazmanız yeterlidir: ") x = input("Şifreinizde büyük küçük harf karışık olmasını ister misiniz ? , Evet Veya Hayır yazmanız yeterli: ") y = input("Şifreniz büyük harfli karakterlerden mi,küçük harfli karakterlerden mi oluşsun: 1-) Büyük Harf, 2-) Küçük harf: ") a = input("Şifrenizde sembol olsun mu ?, Evet veya Hayır yazmanız yeterlidir: ") b = input("Son olarak şifrenizin uzunluğunu belirtiniz: 1-)(0,8) , 2-)(8,16): ") password = "" if select=="Evet": password = "".join(random.choice(rakam)) elif select=="Hayır": print("Seçeneğiniz seçildi.") else: print("E harfini veya H harfini büyük yazdığınızdan emin olun.") if x=="Evet": password = "".join(random.choice(karısıkharf)) elif x=="Hayır": print("Seçeneğiniz seçildi.") else: print("E harfini veya H harfini büyük yazdığınızdan emin olun.") if y=="1": password = "".join(random.choice(buyukharf)) elif y=="2": password = "".join(random.choice(kucukharf)) elif y != "1" or "2": print("Lüten 1 veya 2 yi seçiniz.") else: print("Seçeneğiniz seçildi.") if a=="Evet": password += random.choice(sembol) elif a=="Hayır": print("Seçeneğiniz seçildi.") else: print("E harfini veya H harfini büyük yazdığınızdan emin olun.") if b=="1": password == range(0,8) elif b=="2": password == range(8,16) else: print("1 veya 2 yi tuşlayın aksi takdirde bu hatayı alırsınız.") print(password)
Hatalarımı buldum kapatmaya çalıştım daha kısa yöntemler bulanlar varsa dm atabilir açığım bu tarz şeylere. çalışanını şu şekilde yaptım benim gibi hatayı bulamayanlar şu şekilde yapabilir
Kod:
import string
from random import choice
sembol = string.punctuation
rakam = string.digits
kelime = string.ascii_letters
password = ""
number = str(input("Eğer şifrenizde rakam olmasını istiyorsanız ||evet||// istemiyorsanız ||hayır||"))
if number=="evet":
password += "".join(choice(rakam))
elif number=="hayır":
print("Seçiminiz onaylandı sıradaki seçimi yapın.")
else:
print("Yanlış tuşlama büyük harf küçük harf kuralına dikkat edin")
string = str(input("Eğer şifrenizde sembol olmasını istiyorsanız ||evet|| // istemiyorsanız ||hayır||"))
if string=="evet":
password += "".join(choice(sembol))
elif string=="hayır":
print("seçiminiz onaylandı sıradaki seçimi yapın.")
else:
print("Yanlış tuşlama büyük harf küçük harf kuralına dikkat edin")
my_kelıme = str(input("Şifrenizde harf olmasını istiyorsanız ||evet|| // istemiyorsanız ||hayır|| "))
if my_kelıme=="evet":
password += "".join(choice(kelime))
elif my_kelıme=="hayır":
print("Seçiminiz onaylandı sıradaki seçimi yapın. ")
else:
print("Yanlış tuşlama büyük harf küçük harf kuralına dikkat edin")
length = int(input("Şifrenizin uzunluğunu istediğiniz şekilde yazınız"))
password = "".join(choice(password) for x in range(length))
print(password)
Moderatör tarafında düzenlendi: