脚本之家,脚本语言编程技术及教程分享平台!
分类导航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

服务器之家 - 脚本之家 - Python - Python实现按中文排序的方法示例

Python实现按中文排序的方法示例

2021-02-05 00:35tian_shl Python

这篇文章主要介绍了Python实现按中文排序的方法,涉及Python基于locale模块的中文编码与排序相关操作技巧,需要的朋友可以参考下

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

安装中文库

?
1
2
3
sudo apt-get update
sudo apt-get install language-pack-zh-hans-base
sudo dpkg-reconfigure locales

使用

?
1
2
3
4
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))

测试用例

输入

?
1
2
3
4
5
6
7
8
9
10
# -*- 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===
东挂南枝自

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

Python实现按中文排序的方法示例

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

原文链接:https://blog.csdn.net/xiaobuding007/article/details/78224159

延伸 · 阅读

精彩推荐