Python 将东部阿拉伯数字转换为西部阿拉伯数字

Python 将东部阿拉伯数字转换为西部阿拉伯数字,python,Python,实现这一目标的最佳方式是什么 像这样: eastern_to_western = {"٠":"0","١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9"} int(''.join([eastern_to_western[c] for c in '٧٧٧٣'])) 7773 使用unicode.translate和顺序映射: S.translate(table) -> unicode Return

实现这一目标的最佳方式是什么

像这样:

eastern_to_western = {"٠":"0","١":"1","٢":"2","٣":"3","٤":"4","٥":"5","٦":"6","٧":"7","٨":"8","٩":"9"}
int(''.join([eastern_to_western[c] for c in '٧٧٧٣']))

7773

使用unicode.translate和顺序映射:

S.translate(table) -> unicode

Return a copy of the string S, where all characters have been mapped
through the given translation table, which must be a mapping of
Unicode ordinals to Unicode ordinals, Unicode strings or None.
Unmapped characters are left untouched. Characters mapped to None
are deleted.
例如:

table = {1776: 48,  # 0 
         1777: 49,  # 1
         1778: 50,  # 2
         1779: 51,  # 3
         1780: 52,  # 4
         1781: 53,  # 5
         1782: 54,  # 6
         1783: 55,  # 7
         1784: 56,  # 8
         1785: 57}  # 9


u'some ۰۱۲ of ۳۴۵ it ۶۷ is ۸۹ normal text'.translate(table)
输出:

相关的,可能的重复:
u'some 012 of 345 it 67 is 89 normal text'