Python Tutorials

Python’da Sağlam Tam Sayı Girişi: En İyi Uygulamalar ve Hata Yönetimi

Spread the love

Python programlamada kullanıcı girişini okumak ve tamsayıya dönüştürmek yaygın bir işlemdir. Bu süreç, beklenmedik girişlerle karşılaştığında programınızın çökmemesini sağlamak için dikkatli hata yönetimi gerektirir. Bu makale, hem Python 3 hem de Python 2’yi kapsayarak Python’da tamsayı girişi okumak için en iyi uygulamaları size rehberlik edecektir.

İçindekiler

Python 3’te Tamsayı Girişi Okuma

Python 3, kullanıcı girişini okumak için input() fonksiyonunu kullanır. Bu fonksiyon her zaman bir dize döndürür, bu nedenle açıkça int() kullanarak tamsayıya dönüştürmeniz gerekir. Ancak, tamsayı olmayan giriş bir hataya neden olacaktır. En iyi yaklaşım, olası ValueError istisnalarını işlemek için bir try-except bloğu kullanmaktır.


while True:
    try:
        user_input = input("Bir tamsayı girin: ")
        number = int(user_input)
        break  # Giriş geçerliyse döngüden çık
    except ValueError:
        print("Geçersiz giriş. Lütfen bir tamsayı girin.")

print("Girdiğiniz değer:", number)

Python 3’te Sağlam Hata Yönetimi

while True döngüsü, program geçerli bir tamsayı girilene kadar kullanıcıya istekte bulunmaya devam etmesini sağlar. Daha gelişmiş hata yönetimi, farklı türdeki geçersiz girişler için özel hata mesajları veya daha karmaşık senaryolar için düzenli ifadeler kullanarak giriş doğrulama içerebilir.

Python 2’de Tamsayı Girişi Okuma

Python 2’de, kullanıcı girişini dize olarak okumak için tercih edilen yöntem raw_input()‘tur. Python 2’de input() kullanmaktan kaçının çünkü girişi değerlendirmeye çalışır, bu da güvenlik açıklarına ve beklenmedik davranışlara yol açabilir.


while True:
    try:
        user_input = raw_input("Bir tamsayı girin: ")
        number = int(user_input)
        break
    except ValueError:
        print "Geçersiz giriş. Lütfen bir tamsayı girin."

print "Girdiğiniz değer:", number

Python 2’de Sağlam Hata Yönetimi

Python 2’deki hata yönetimi, try-except bloğunu kullanarak Python 3’e benzer. Yukarıda gösterilen aynı döngü tekniği, programın geçersiz girişlerde çökmemesini sağlar.

En İyi Uygulamalar ve Gelişmiş Teknikler

Her zaman kullanıcı girişini doğrulayın. Kullanıcının beklenen veri türünü sağlayacağını varsaymayın. try-except blokları kullanmak, sağlam hata yönetiminin temel bir parçasıdır. Uygulamanızın ihtiyaçlarına bağlı olarak daha özel istisna yönetimi eklemeyi (örneğin, KeyboardInterrupt işleme) düşünün. Karmaşık doğrulama senaryoları için düzenli ifadeler güçlü bir araç olabilir.

Sıkça Sorulan Sorular

  • S: Kullanıcı ondalıklı bir sayı girerse ne olur?
    C: int() fonksiyonu ondalık kısmı keser ve ondalıklı sayıyı tamsayıya dönüştürür (örneğin, int(3.14), 3 döndürür). Ondalıklı sayıları işlemek için float() kullanın.
  • S: Başka tür hataları nasıl işleyebilirim?
    C: KeyboardInterrupt veya EOFError gibi belirli istisnaları işlemek için daha fazla except bloğu ekleyin.
  • S: Daha özlü doğrulama yöntemleri var mı?
    C: try-except açık olsa da, düzenli ifadeler karmaşık doğrulama kuralları için daha özlü çözümler sunar.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir