Python 对中文排序除了对照表还有没有其他好的实现
1个回答
展开全部
出现这样的结果是因为‘曙’和‘曾’都是常用字,而‘鲑’和‘怡’都是次常用字,但无论从笔画还是拼音来看,这两对顺序都应该反过来。后来扩充的GBK和GB18030编码为了向下兼容,都没有更改之前的汉字顺序,于是sort之后的次序就很乱了。
另一方面unicode编码的中文是按《康熙字典》的偏旁部首和笔画数来排列的,所以排序结果和GB编码又不一样。
1
2
3
4
5
# encoding=utf8
char=['赵','钱','孙','李','佘']
char.sort()
for item in char:
print item.decode('utf-8').encode('gb2312')
另一方面unicode编码的中文是按《康熙字典》的偏旁部首和笔画数来排列的,所以排序结果和GB编码又不一样。
1
2
3
4
5
# encoding=utf8
char=['赵','钱','孙','李','佘']
char.sort()
for item in char:
print item.decode('utf-8').encode('gb2312')
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询