python - 为python排序波斯语字符串
问题描述
我想使用python的排序功能,但效果不佳。
sorted( ['ا', 'ب', 'پ', 'ح', 'س', 'ص', 'ف', 'ک', 'ک', 'ک', 'م', 'م']) =
['ا', 'ب', 'ح', 'س', 'ص', 'ف', 'م', 'م', 'پ', 'ک', 'ک', 'ک']
解决方案
尝试使用PyICU:
import PyICU
collator = PyICU.Collator.createInstance(PyICU.Locale('fa_IR.UTF-8'))
print ([i for i in sorted(['ا', 'ب', 'پ', 'ح', 'س', 'ص', 'ف', 'ک', 'ک', 'ک', 'م', 'م'], key=collator.getSortKey)])
推荐阅读
- android - Android Gradle Plugin 4.1.0 自动授予位置权限
- python - 将值加在一起并将它们分配给特定的键?
- android - Flutter剪贴板在android 10中返回null
- git - Git - 在跟踪旧远程时将子目录提取到新存储库
- javascript - Vue 3 - 延迟加载图像组件
- mysql - 幽灵/复制表比原始表大很多倍
- c++ - 对深度的时间去除会产生鬼影
- python - 一旦到达结束python如何反转迭代
- javascript - 用 JavaScript 和 P5 创建游戏 - 几个基本问题
- arrays - C 多维数组镜像自身