Python, güçlü ve esnek bir programlama dilidir ve veri türleriyle çalışırken oldukça esneklik sağlar. Bu esneklik, farklı veri türleri arasında dönüşüm yapma yeteneği, yani casting (tip dönüşümü) ile mümkün olur. Bu yazıda, Python’da tip dönüşümünün nasıl yapıldığını ve yaygın olarak kullanılan bazı dönüşüm örneklerini inceleyeceğiz.
Tip Dönüşümü Nedir?
Tip dönüşümü, bir veri türündeki değeri başka bir veri türüne dönüştürme işlemidir. Python’da tip dönüşümü iki ana kategoriye ayrılır:
- Otomatik (implicit) dönüşüm: Python’un kendiliğinden yaptığı dönüşümler.
- Manuel (explicit) dönüşüm: Programcı tarafından açıkça yapılan dönüşümler.
Otomatik (Implicit) Dönüşüm
Python, bazı durumlarda otomatik olarak bir veri türünü başka bir veri türüne dönüştürebilir. Bu genellikle daha düşük bir veri türünden daha yüksek bir veri türüne geçiş yaparken olur.
Örneğin:
# Otomatik dönüşüm örneği
num_int = 123 # integer
num_float = 1.23 # float
# Toplama işlemi
num_new = num_int + num_float
print("num_int:", num_int)
print("num_float:", num_float)
print("num_new:", num_new)
print("num_new type:", type(num_new))
Bu örnekte, num_int
integer tipinde ve num_float
float tipindedir. Python, toplama işlemi sırasında num_int
değerini otomatik olarak float tipine dönüştürür ve sonuç da float tipinde olur.
Manuel (Explicit) Dönüşüm
Bazı durumlarda, veri türünü açıkça değiştirmek isteyebiliriz. Python, bu tür dönüşümler için birkaç yerleşik fonksiyon sağlar:
int()
float()
str()
bool()
Integer’a Dönüşüm
# Float'tan integer'a dönüşüm
num_float = 12.56
num_int = int(num_float)
print("num_float:", num_float)
print("num_int:", num_int)
Bu örnekte, num_float
değeri 12.56 olan bir float’tır. int()
fonksiyonu kullanılarak bu değer integer’a dönüştürülür ve sonuç olarak sadece tam kısmı alınır.
Float’a Dönüşüm
# String'den float'a dönüşüm
str_num = "123.45"
num_float = float(str_num)
print("str_num:", str_num)
print("num_float:", num_float)
Burada, str_num
değeri “123.45” olan bir string’dir. float()
fonksiyonu kullanılarak bu değer float’a dönüştürülür.
String’e Dönüşüm
# Integer'dan string'e dönüşüm
num_int = 123
str_num = str(num_int)
print("num_int:", num_int)
print("str_num:", str_num)
Bu örnekte, num_int
değeri 123 olan bir integer’dır. str()
fonksiyonu kullanılarak bu değer string’e dönüştürülür.
Boolean’a Dönüşüm
# Integer'dan boolean'a dönüşüm
num_int = 0
bool_val = bool(num_int)
print("num_int:", num_int)
print("bool_val:", bool_val)
Bu örnekte, num_int
değeri 0 olan bir integer’dır. bool()
fonksiyonu kullanılarak bu değer boolean’a dönüştürülür. Python’da 0 değeri False
, 0 dışındaki tüm değerler True
olarak değerlendirilir.
Karmaşık Dönüşüm Örnekleri
Bazen birden fazla tip dönüşümü yapmanız gerekebilir:
# String'den integer'a, ardından float'a dönüşüm
str_num = "456"
num_int = int(str_num)
num_float = float(num_int)
print("str_num:", str_num)
print("num_int:", num_int)
print("num_float:", num_float)
Bu örnekte, bir string önce integer’a, ardından float’a dönüştürülür.
Sonuç
Python’da tip dönüşümü, farklı veri türleriyle çalışırken oldukça kullanışlıdır. Otomatik ve manuel dönüşüm yöntemleriyle verilerinizi istediğiniz forma dönüştürebilirsiniz. Bu, özellikle kullanıcı girdilerini işlerken veya çeşitli veri kaynaklarından gelen verilerle çalışırken önemlidir. Yukarıdaki örneklerle, Python’da tip dönüşümünün temellerini öğrenmiş oldunuz. Artık bu bilgileri projelerinizde kullanabilirsiniz.