python汉字排序_Python实现按中文排序的方法示例

本文实例讲述了Python实现按中文排序的方法。分享给大家供大家参考,具体如下:

安装中文库

sudo apt-get update

sudo apt-get install language-pack-zh-hans-base

sudo dpkg-reconfigure locales

使用

import locale

locale.setlocale(locale.LC_COLLATE, 'zh_CN.UTF8')

cmp = locale.strcoll

courses.sort(lambda x, y: cmp(x.course_name, y.course_name))

测试用例

输入

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

import locale

#locale.setlocale(locale.LC_COLLATE, 'zh_CN.UTF8')

cmp = locale.strcoll

items = list('自挂东南枝'.decode('utf-8'))

print 'before'.center(10, '=')

print ''.join(items)

items.sort(lambda x, y: cmp(x, y))

print 'after'.center(10, '=')

print ''.join(items)

输出

==before==

自挂东南枝

==after===

东挂南枝自

本机测试输出效果如下图:

2018425144440581.png?2018325144458

PS:这里再为大家推荐2款比较实用的相关在线排序工具供大家参考使用:

希望本文所述对大家Python程序设计有所帮助。