Python ile kullanıcıdan alınan bir metindeki her kelimenin ilk harfini büyük yapmak, dilin sağladığı string işleme yetenekleriyle oldukça kolaydır. Ancak, Türkçe’de büyük harfe dönüştürme işlemlerinde bazı özel durumlar göz önünde bulundurulmalıdır. Bu yazıda, Türkçe metinler için harf büyütme işlemini doğru şekilde gerçekleştiren bir Python fonksiyonu örneği inceleyeceğiz.
Kod Örneği: capitalize_words_turkish
Aşağıdaki kod, Python ile bir metin içindeki her kelimenin ilk harfini büyütüp geri kalanını küçük harf yaparak Türkçe diline özgü gereksinimlere uygun şekilde işler.
def capitalize_words_turkish(text):
words = text.split()
capitalized_words = []
for word in words:
if word:
first_letter = 'İ' if word[0] == 'i' else word[0].upper()
rest_of_word = word[1:].lower()
capitalized_words.append(first_letter + rest_of_word)
return " ".join(capitalized_words)
user_input = input("Metni girin: ")
capitalized_text = capitalize_words_turkish(user_input)
print(f"Dönüştürülmüş metin: {capitalized_text}")
Python ile yazılan kodun detaylı açıklaması
Fonksiyon Tanımı: capitalize_words_turkish
adında bir fonksiyon tanımlıyoruz. Bu fonksiyon, parametre olarak bir metin (text
) alır ve her kelimenin ilk harfini büyük yaparak düzenlenmiş metni döndürür.
Metnin Kelimelere Ayrılması: text.split()
metodu ile metni boşluklardan ayırarak kelime listesine dönüştürüyoruz. Bu liste üzerinde her kelimeyi ayrı ayrı işlemek için words
adında bir liste oluşturuyoruz.
Döngü İle Kelimelerin İşlenmesi:
for
döngüsü kullanarakwords
listesindeki her kelimeyi sırayla işliyoruz.- Boş olmayan kelimeler için (
if word:
) ilk harfi büyük yapma işlemi gerçekleştiriliyor.
Türkçe Harf Desteği: Türkçe’de ‘i’ harfinin büyük hali ‘İ’ olduğundan, bu özel durumu göz önünde bulunduruyoruz:
- Eğer kelimenin ilk harfi ‘i’ ise, bunu ‘İ’ ile değiştiriyoruz.
- Aksi halde
word[0].upper()
ile kelimenin ilk harfini büyük harfe çeviriyoruz.
Kalan Harflerin Küçük Yapılması: word[1:].lower()
ifadesi, kelimenin geri kalan kısmını küçük harfe çevirir.
Kelimenin Yeniden Birleştirilmesi: İlk harfi büyütülmüş ve geri kalanı küçültülmüş kelimeyi capitalized_words
listesine ekliyoruz.
Sonucun Dönüştürülmesi: join()
metodu kullanılarak capitalized_words
listesindeki kelimeler birleştirilip düzenlenmiş metin olarak döndürülür.
Kullanıcı Girdisi ve Çıktı Örneği
Kullanıcıdan bir metin girmesi istenir ve ardından bu metin capitalize_words_turkish
fonksiyonuyla işlenir:
Metni girin: merhaba dünya, bu bir python örneğidir.
Dönüştürülmüş metin: Merhaba Dünya, Bu Bir Python Örneğidir.
Yukarıdaki örnekte, fonksiyon her kelimenin ilk harfini büyük yaparken, ‘merhaba’ ve ‘dünya’ kelimeleri gibi metindeki diğer kelimeleri de uygun şekilde işler.
Python ile basitten zora giden uygulamalar serisi için buraya tıklayabilirsiniz.