Python’da TypeError: ‘int’ object is not callable Hatası ve Çözümü

TypeError: ‘int’ object is not callable hatası ile karşılaşıyorsanız bu hata Python’un bir nesneyi yanlış şekilde çağırmaya çalıştığını gösterir. Eğer bir tamsayı değeri bir fonksiyon gibi çağırmaya çalışıyorsanız bu hatayı alabilirsiniz. Örneğin:

Örnek 1:

num = 5
print(num())  # num bir int nesnesi olduğu için çağrılamaz.

Bu örnekte num adında bir tamsayı (int) nesnesine sahibiz. print(num()) satırında num() ifadesi num nesnesini fonksiyon gibi çağırmaya çalışmaktadır. Ancak num bir tamsayı olduğu için çağrılamaz ve bu nedenle TypeError: ‘int’ object is not callable hatası meydana gelir.

Örnek 2:

sayilar = [1, 2, 3]
print(sum(sayilar))  # sayilar listesinin toplamını verir.

sum = 10
print(sum(sayilar))  # sum artık bir int olduğu için çağrılamaz.

Bu örnekte sum adında bir liste elemanlarının toplamını veren yerleşik fonksiyon var. Bu fonksiyon sayilar listesi verildiğinde toplamı verir. Ancak sum = 10 satırıyla sum değişkenine bir tamsayı atandığında sum fonksiyonu çağrılamaz hale gelir ve TypeError: ‘int’ object is not callable hatası meydana gelir.

Öneriler:

  • Değişken isimlerinizi dikkatli seçin ve yerleşik fonksiyon isimleriyle çakışmamasına özen gösterin.
  • Tamsayı değerlerini bir fonksiyon gibi çağırmamaya dikkat edin.
  • Eğer bir fonksiyonu çağırmak istiyorsanız, parantezleri doğru şekilde kullanarak çağrılmasını sağlayın.
  • Kodunuzda int() gibi yerleşik fonksiyonları kullanıyorsanız, bu fonksiyonların ismiyle çakışan değişken isimleri kullanmamaya özen gösterin.

Not: Eğer TypeError: ‘int’ object is not callable hatası alıyorsanız, hatanın sebebini anlamak için hatayı aldığınız satıra dikkatlice bakın. Değişken isimlerinizi ve türlerinizi kontrol ederek hatanın nedenini kolayca bulabilir ve düzeltebilirsiniz.

Kaynaklar:

Scroll to Top