中文姓名按照拼音排序-python

写在前面

在做文档排版的时候经常会遇到姓名的排序问题,当人名很多的时候,我们是不可能人工的一个一个比较排序,那么有什么办法快速解决这一问题吗?答案可定是有,今天为大家介绍一种。

程序

from xpinyin import Pinyin

def my_function(lis):             #输入一个名字的列表
    pin=Pinyin()
    result=[]
    for item in lis:
        result.append((pin.get_pinyin(item),item))
    result.sort()
    for i in range(len(result)):
        result[i]=result[i][1]
    result=' '.join(result)       #将排好序的结果使用空格连接,方便输出
    print(result)                 #输出结果

my_function(['张三','李四','王五','赵六'])
    

输出结果 

李四 王五 张三 赵六

 

你可能感兴趣的:(中文姓名按照拼音排序-python)