Merhaba Değerli Arkadaşlar
string.lower() yapmak istiyorum. hepsini düzgün küçültüyor, sadece bir harfte yanlış küçültüyor.
s = ‘aAàâÂbBcCçÇdDeEfFgGğĞhHıIìîÎiİjJkKlLmMnNoOöÖpPrRsSşŞtTuUùûüÜvVwWyYzZ’
print(s)
print(s.lower())
Yukarıdaki kod aşağıdaki çıktıyı veriyor:
aAàâÂbBcCçÇdDeEfFgGğĞhHıIìîÎiİjJkKlLmMnNoOöÖpPrRsSşŞtTuUùûüÜvVwWyYzZ
aaàââbbccççddeeffggğğhhıiìîîii̇jjkkllmmnnooööpprrssşşttuuùûüüvvwwyyzz
Tek bir problem var: I harfini (büyük I) küçültürken, i harfi (küçük i) olarak yanlış küçültüyor. Halbuki. ı harfi (küçük ı) olarak küçültmesi lazım.
İnternette aradım, bulamadım. Python 3 den itibaren string’ler zaten unicode (utf-8 herhalde) olarak tutuluyormuş. Zaten öteki Türkçe karakterleri de doğru olarak küçültüyor.
Aklıma tek gelen çözüm, kendi lower() fonksiyonumu kendim yazmak, bir dict kullanarak.
Acaba basit, kısa bir yolu yok mu? Bir yeri mi kaçırıyorum?
Teşekkürler