python - 使用Python将阿拉伯语单词编号与字典中的相应编号进行匹配

标签 python dictionary character-encoding

我试图将阿拉伯数字与数字相匹配,但它不起作用。如果它尝试相同的方法但没有阿拉伯字符,它会完美地工作。

def Replace(text, wordDict):
    for key in wordDict:
        text = text.replace(key, wordDict[key])
    return text



singular = {
    "واحد" :"1",
    "اثنان" :"2",
    "ثلاتة" :"3"
}

s="ثلاثة"
s=Replace(s,singular)
print(s)

输出是ЫֵЫ,尽管它应该是3,这意味着没有执行替换操作。 有什么想法吗?

最佳答案

如果使用特殊字符,则应使用 Unicode 字符串。以下代码显示 3:

# -*- coding: utf-8 -*-

def num_replace(text, wordDict):
    for key in wordDict:
        text = text.replace(key, wordDict[key])
    return text

singular = {
    u"واحد": "1",
    u"اثنان" :"2",
    u"ثلاتة" :"3"
}

s = u"ثلاتة"
s = num_replace(s,singular)
print(s)

阅读more about Unicode in Python .

关于python - 使用Python将阿拉伯语单词编号与字典中的相应编号进行匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49015922/

相关文章:

python - 使用 numpy 的快速元素节点平均

python - 在 Python 中从 API 对象中提取数据

javascript - 以更短的方式从数组中获取字符串

sockets - mIRC套接字图表集失败

python - 从头到尾循环

python - 使用 AST 模块来改变和删除赋值/函数调用

ios - 按键名在字典数组中搜索

安卓工作室 - "Unmappable character for encoding UTF-8"

url - url 可以有 UTF-8 字符吗?

python - 在 Python 中引发异常时如何停止程序?