Bu TypeError, bir metni (str) doğrudan bir sayı (int) ile + kullanarak birleştirmeye çalıştığında oluşur. Python metin ve sayıyı otomatik karıştırmaz.
Neden olur?
Çünkü + işareti metinler için 'birleştir', sayılar için 'topla' anlamına gelir; ikisini karıştırınca Python ne yapacağını bilemez.
Hatalı kod
yas = 8
print('Yasim ' + yas) # TypeError
Doğru kod
yas = 8
print('Yasim ' + str(yas)) # str() ile metne cevir
print(f'Yasim {yas}') # ya da f-string (onerilen)
Kontrol listesi
- Sayıyı metne çevirmek için
str(sayi)kullan. - En temiz yol f-string'dir:
f'Yasim {yas}'. - Tersi durumda metni sayıya çevir:
int('5').
Python derslerimizle adım adım pratik yapabilirsin.