Python Type Checking

Python dilinde elimizdeki objenin type’ını öğrenme işlemine Type Checking diyoruz. Bunu basitçe “type(objectName)” komutuyla elde edebiliriz. Bir örnekle başlayalım.

>>> başkan_ismi="Recep Tayyip Erdogan"
>>> print(type(başkan_ismi))
<class 'str'>

olarak çıkış alabiliriz. Elimizdeki değişkenin türünü kontrol için isinstance() metodunu da kullanabiliriz. Metodun ilk inputuna değişkenimizin ismi, ikinci inputuna ise kontrol etmek istenen türünün ismi yazılır ve boolean olarak çıktı alırız.

>>> isinstance(başkan_ismi, str)
True

veya ikinci bir dizilim ile

>>> type(başkan_ismi) is str
True

çıktımızı alabilir ve if-else bloklarımızda kullanabiliriz. Peki değişkenimiz hiçbir türe ait değil ise kontrolünü nasıl yapacağız, yani türü None ise? Bu da ikinci gösterdiğimiz dizilim ile çıktımızı alabiliriz.

>>> type(başkan_ismi) is None
False

Aşağıdaki farklı türler için kontrol örneklerini inceleyebilirsiniz.

# Variables of different types
i = 1
f = 0.1
s = "Hell"
l = [0, 1, 2]
d = {0:"Zero", 1:"One"}
t = (0, 1, 2)
b = True
n = None

Ve tüm çıktılarda True göreceğimiz örnek kodlar:

isinstance(i, int)
isinstance(f, float)
isinstance(s, str)
isinstance(l, list)
isinstance(d, dict)
isinstance(t, tuple)