Python и турецкая капитализация
Я не нашел хорошего описания о том, как справиться с этой проблемой наокна поэтому я делаю это здесь.
На турецком есть две буквыı
(I
) а такжеi
(İ
) которые неправильно обрабатываются Python.
>>> [char for char in 'Mayıs']
['M', 'a', 'y', 'i', 's']
>>> 'ı'.upper().lower()
'i'
Как и должно быть, учитывая правильность локали:
>>> [char for char in 'Mayıs']
['M', 'a', 'y', 'ı', 's']
>>> 'ı'.upper().lower()
'ı'
а также
>>> 'i'.upper()
'İ'
>>> 'ı'.upper()
'I'
Я пыталсяlocale.setlocale(locale.LC_ALL,'Turkish_Turkey.1254')
или даже'ı'.encode('cp857')
но это не помогло
Как мне заставить python правильно обрабатывать эти две буквы?