Python根据拼音对中文排序
问题描述
对中文排序时,顺序并不是想象中的按【拼音】排
print(sorted(['美国', '中国', '日本'])) # 美m 中z 日r abcdefghijkl[m]nopq[r]stuvwsy[z]
# ['中国', '日本', '美国']
解决方案
安装pypinyin
pip install pypinyin
代码
# -*- coding: utf-8 -*-
# @Author : XerCis
# @Function: 中文排序
from itertools import chain
from pypinyin import pinyin, Styledef to_pinyin(s):'''转拼音:param s: 字符串或列表:type s: str or list:return: 拼音字符串>>> to_pinyin('你好吗')'ni3hao3ma'>>> to_pinyin(['你好', '吗'])'ni3hao3ma''''return ''.join(chain.from_iterable(pinyin(s, style=Style.TONE3)))print(sorted(['美国', '中国', '日本'])) # 美m 中z 日r abcdefghijkl[m]nopq[r]stuvwsy[z]
# ['中国', '日本', '美国']
print(sorted(['美国', '中国', '日本'], key=to_pinyin)) # 美m 中z 日r abcdefghijkl[m]nopq[r]stuvwsy[z]
# ['美国', '日本', '中国']
参考文献
- pypinyin 0.37.0 文档
- python-pinyin: 汉字转拼音
- Python排序
- Python itertools——高效迭代
Python根据拼音对中文排序相关推荐
- MongoDB3.4 根据中文拼音给中文排序
mongo从3.4版本开始,可以对根据中文拼音给中文进行排序,按照中文首字母的顺序 升序(a-z)或者降序(z-a). 对于中文名字,通常有按拼音顺序排序的需求,这时就可以通过collation来搞定 ...
- python的拼音_python 中文分词和拼音首字母
昨天的算法课老师以中文分词为例讲了DP,换了种简单的方式(求分词后频率和最大)实现了一下,效果不错,频率词典是从这里找的: http://download.csdn.net/source/347899 ...
- python的拼音_Python中文转为拼音
# -*- coding: utf-8 -*- import sys def openTable(): f = open('gb-pinyin.table', 'r') table = f.read( ...
- Python sorted Pandas sort_values 中文拼音排序
问题描述: 默认情况下,pandas排序函数sort_values,python通用排序函数sorted,列表排序函数.sort(),都无法按拼音对中文进行排序. 解决方案: # 用list进行举例 ...
- python 中文排序(按拼音首字母)
pypinyin 排序 仅按拼音首字母 排序 安装pypinyin pip3 install pypinyin 代码from pypinyin import lazy_pinyinchars = [' ...
- python汉字排序_【IT专家】Python中文排序(转载)
本文由我司收集整编,推荐下载,如有疑问,请与我司联系 Python 中文排序(转载) 2012/02/02 3793 Python 比较字符串大小时,根据的是 ord 函数得到的编码 值.基于它的排序 ...
- python编程单词排序_Python实现针对中文排序的方法
本文实例讲述了Python实现针对中文排序的方法.分享给大家供大家参考,具体如下: Python比较字符串大小时,根据的是ord函数得到的编码值.基于它的排序函数sort可以很容易为数字和英文字母排序 ...
- python汉字排序_Python实现针对中文排序的方法
本文实例讲述了Python实现针对中文排序的方法.分享给大家供大家参考,具体如下: Python比较字符串大小时,根据的是ord函数得到的编码值.基于它的排序函数sort可以很容易为数字和英文字母排序 ...
- 中文按拼音首字母排序的C++实现方案
先介绍下背景,最近有个需求,需要将用户的好友列表按照昵称的拼音首字母排序,类似于手机电话簿的联系人.一开始建议让终端同学去做这点,毕竟终端现有的电话簿模块已经实现了,不过终端同学说电话簿是系统组件,移 ...
- python汉字排序规则_Python 中文排序
我找到最全的数据是slowwind9999上传到csdn的unicode汉字编码表,包括全部20902个汉字的全拼.五笔.郑码.UNICODE.GBK.笔画数 部首,以及笔顺编号(拼音部分没有音调,而 ...
最新文章
- 修改 Android Studio 相关模板,以加快项目创建时构建速度,支持Mac,Windows,Linux...
- cacti监控一览无余
- 使用localStorage实现历史记录搜索功能也就是天猫app历史记录存储方便浏览
- 选购光端机有哪些必备条件
- k8s kubectl run命令使用详解
- 访问云服务器储存的mp4_访问云服务器储存的mp4
- RocketMQ(四)—— 单机与集群安装
- html网页设计课程的思维导图,UI设计初级教程学哪些?课程大纲和思维导图分享给你!...
- Bucharest, Romania 2013 G Points DP
- ezcad旋转轴标刻参数_激光打标机软件ezcad中的曲线圆弧排文本参数说明及设置...
- MySQL 8 安装教程
- 也致第一次安装Rime的你
- OISPT 内网安全项目组A1-渗透测试基础项目训练文档
- 详解C++中fixed,setprecision(),setw()的用法
- linux7 显示任务,centos 7下计划任务详解之at
- 图片转文字的实用方法
- Linux计算节点怎么关闭,OpenStack 删除无用的计算结点
- 计算机鼠标与键盘基本知识,电脑鼠标和键盘的基础设置方法
- 【requests库】爬取Pixiv日榜图片 并保存到本地
- 我的学习笔记003--!!DOCTYPE html PUBLIC -//W3C//DTD HTML 4.0 Transitional//EN http://www.w3.org/mxx