Python UTF-8 小写土耳其语特定字母

标签 python unicode encoding utf-8

使用 python 2.7:

>myCity = 'Isparta'
>myCity.lower()
>'isparta'
#-should be-
>'ısparta'

尝试了一些解码,(例如,myCity.decode("utf-8").lower())但找不到如何解码。

如何降低这种字母? ('I' > 'ı', 'İ' > 'i' 等)

编辑:在土耳其语中,“I”的小写字母是“ı”。 'i' 的大写是 'İ'

最佳答案

有些人建议使用 tr_TR.utf8 语言环境。至少在 Ubuntu 上,可能与 this bug 有关,设置此语言环境不会产生预期的结果:

import locale
locale.setlocale(locale.LC_ALL, 'tr_TR.utf8')

myCity = u'Isparta İsparta'
print(myCity.lower())
# isparta isparta

因此,如果此错误影响到您,作为解决方法,您可以自己执行此翻译:

lower_map = {
    ord(u'I'): u'ı',
    ord(u'İ'): u'i',
    }

myCity = u'Isparta İsparta'
lowerCity = myCity.translate(lower_map)
print(lowerCity)
# ısparta isparta

打印

ısparta isparta

关于Python UTF-8 小写土耳其语特定字母,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19030948/

相关文章:

python - 使用 python-api-client 的异步 insertAll 请求

python - 如何将上传的文件存储在 Flask 的 mongoDB 中?

python - pyplot 静态颜色颜色图

python - 如何计算 python pandas 中给定时间间隔内的行数?

xml - 为什么 Qt 在加载 XML 文件时会丢失我的薄空格 unicode 字符?

c# - 日语电子邮件主题编码

python - CSV、DictWriter、unicode 和 utf-8

java - Android Base64编码问题上构建Gigya Signature

ruby-on-rails - 我正在尝试解析一些表格,它们有一些奇怪的类似字母表的非 ascii 字符

java - 无法使用Java在Windows cmd上显示unicode字符