Çözüldü Python kodunda hata oluşuyor

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.

KiloZuluSierra

Decapat
Katılım
30 Mayıs 2021
Mesajlar
878
Makaleler
1
Çözümler
5
Daha fazla  
Cinsiyet
Erkek
Kullanıcı adı kontrolü yapmak istiyorum. Şartım şudur kullanıcı adında ad soyad bulununamaz. Eğer kurala uymazsa bir daha sormasını istiyorum. Denemek için hatalı cevabı giriyorum bir daha giriniz diyor (Buraya kadar sıkıntı yok) fakat bir daha doğru cevabı girsem bile bir daha giriniz yanlış diyor, anlamadım. Cevaplar için şimdiden teşekkürler.



Python:
while True:
    kul=input("Lütfen bir kullanıcı adı belirle "+str(ad)+".")
    if kul.find(ad)==:
        break
    else:
        print("Kullanıcı adınızda, adınız ve soyadınız bulunmamalı.Lütfen tekrar deneyiniz.")
 
Çözüm
İlk başta adımı "ahmet" olarak tanımlıyorum. Sonra kullanıcı adına "ahmet" yazıyorum dolayısıyla bana yanlış olduğunu ve tekrar yazmam gerektiğini söylüyor .Tekrardan farklı bir şey yazıyorum yine aynı hatayı veriyor. Fakat girdiğim isim kurala uyuyor.
Python:
adsoyad=input("Lütfen bir ad soyad belirle:")
while True:
    kul=input("Lütfen bir kullanıcı adı belirle:")
    if kul.find(adsoyad)==-1 and kul.find(" ")==-1:
        print("Kullanıcı adı doğru")
        break
    else:
        print("Kullanıcı adınızda, adınız ve soyadınız bulunmamalı.Lütfen tekrar deneyiniz.")
Bunu dener misin? Şu anda test edemiyorum, ondan dolayı senin test etmen gerekiyor her seferinde kusura bakma.
Derdinizi pek anlamadım. Sizinkinden daha mantıklı olduğunu düşündüğüm bir kod.

Kod:
ad = "isim"
while True:
    kul = input("Lütfen bir kullanıcı adı belirle " + str(ad) + ".")
    if kul.find(ad) == -1:
        break
    else:
        print("Kullanıcı adınızda, adınız ve soyadınız bulunmamalı.Lütfen tekrar deneyiniz.")
 
[CODE title="Python"]while True:
kul=input("Lütfen bir kullanıcı adı belirle "+str(ad)+".")
if kul.find(ad):
break
else:
print("Kullanıcı adınızda, adınız ve soyadınız bulunmamalı.Lütfen tekrar deneyiniz.")[/CODE]

Şu şekilde düzeltip tekrar dener misiniz?
Böyle hiç çalışmaz hocam boşluklar yok.
 
[CODE lang="python" title="Python"]adsoyad=input("Lütfen bir ad soyad belirle:")
while True:
kul=input("Lütfen bir kullanıcı adı belirle:")
if kul.find(adsoyad):
print("Kullanıcı adınızda, adınız ve soyadınız bulunmamalı.Lütfen tekrar deneyiniz.")
else:
print("Kullanıcı adı doğru")
break[/CODE]

Anlamadığın yeri sorabilirsin. Ben olsam bu kodu daha düzgün yazardım ama senin formatına uygun olarak böyle yapılabilir. Çok daha temiz yazılır yoksa bu kod.
 
[CODE lang="python" title="Python"]adsoyad=input("Lütfen bir ad soyad belirle:")
while True:
kul=input("Lütfen bir kullanıcı adı belirle:")
if kul.find(adsoyad):
print("Kullanıcı adınızda, adınız ve soyadınız bulunmamalı.Lütfen tekrar deneyiniz.")
else:
print("Kullanıcı adı doğru")
break[/CODE]

Anlamadığın yeri sorabilirsin. Ben olsam bu kodu daha düzgün yazardım ama senin formatına uygun olarak böyle yapılabilir. Çok daha temiz yazılır yoksa bu kod.
Hocam kodunuz çalışıyor fakat derdimi anlatamadım. Ben bir yanlış cevap girdikten sonra tekrar doğru girince yine yanlış diyor.
 
Python:
adsoyad=input("Lütfen bir ad soyad belirle:")
while True:
    kul=input("Lütfen bir kullanıcı adı belirle:")
    if adsoyad in kul:
        print("Kullanıcı adınızda, adınız ve soyadınız bulunmamalı.Lütfen tekrar deneyiniz.")
    else:
        print("Kullanıcı adı doğru")
        break

Kodu bu şekilde değiştirirsen sorunlar çözülür. :) Bir şey gözümden kaçmış kusura bakma, bu arada kod geliştirmeye ve temizlenmeye çok açık. Kod üzerinde düşünürsen geliştirir ve daha temiz hala getirirsin. Takıldığın yer olursa söyleyebilirsin.
 

Geri
Yukarı