Python ile Türkçe Karakterleri İngilizceye Dönüştürme
Bu örneğimizde, Türkçe yazılmış bir metnin içinde bulunan Türkçe karakterlerin İngilizce karşılıkları ile göstereceğimiz basit bir kod yazdık.
def turkce_to_ingilizce(text):
char_map = {
'ş': 's',
'Ş': 'S',
'ğ': 'g',
'Ğ': 'G',
'ç': 'c',
'Ç': 'C',
'ı': 'i',
'İ': 'I',
'ö': 'o',
'Ö': 'O',
'ü': 'u',
'Ü': 'U'
}
for key, value in char_map.items():
text = text.replace(key, value)
return text
# Kullanıcıdan metin alma:
text = input("Lütfen metninizi girin: ")
# Metni dönüştürme:
converted_text = turkce_to_ingilizce(text)
# Sonucu ekrana yazdırma:
print("\nDönüştürülmüş Metin: ", converted_text)
Yukarıdaki örneğimizde, kullanıcıdan veri girdisi alabilmek için input() fonksiyonunu kullandık. Metinde belirli bir karakter değişikliği yapabilmek amacıyla Türkçe karakterlerin İngilizce karşılıklarını tanımlamak adına “anahtar-değer” özelliği bulunan sözlük (dictionary) yapısını tercih ettik. Sözlük yapısı sayesinde, her bir Türkçe karakteri hızlı ve kolay bir şekilde İngilizce karşılığıyla eşleştirebildik.
Daha sonra bu eşleştirmeleri kullanarak metindeki Türkçe karakterlerin İngilizceye karşılıkları ile değiştirmek için replace() metodundan yararlandık. Kodu çalıştırmak için: Trinket
Alternatif olarak aşağıdaki gibi çözebiliriz:
def turkce_to_ingilizce(text):
char_map = {
'ş': 's',
'Ş': 'S',
'ğ': 'g',
'Ğ': 'G',
'ç': 'c',
'Ç': 'C',
'ı': 'i',
'İ': 'I',
'ö': 'o',
'Ö': 'O',
'ü': 'u',
'Ü': 'U'
}
for key in char_map:
text = text.replace(key, char_map[key])
return text
# Kullanıcıdan metin alma:
text = input("Lütfen metninizi girin: ")
# Metni dönüştürme:
converted_text = turkce_to_ingilizce(text)
# Sonucu ekrana yazdırma:
print("\nDönüştürülmüş Metin: ", converted_text)
Bu kodda ise for key in char_map:
ifadesi ile sözlüğün anahtarları üzerinde doğrudan bir döngü başlattık. Her döngü adımında key
değişkeni, sözlükteki bir anahtarı alıyor. Bu anahtarın karşılık geldiği değeri ise char_map[key]
ile alarak replace
metoduyla metinde değişiklik yapıyoruz.