扫码关注官方订阅号
array('鑫','鹭','榕','柘','珈','骅','孚','迦','瀚','濮','浔','沱','泸','恺','怡','岷','萃','兖')
这个数组里的中文求按拼音首字母排序
光阴似箭催人老,日月如移越少年。
Python 的話可以利用 pypinyin:
from pypinyin import lazy_pinyin chars = ['鑫','鹭','榕','柘','珈','骅','孚','迦','瀚','濮','浔','沱','泸','恺','怡','岷','萃','兖'] chars.sort(key=lambda char: lazy_pinyin(char)[0][0]) print([lazy_pinyin(char) for char in chars]) print(chars)
結果:
[['cui'], ['fu'], ['hua'], ['han'], ['jia'], ['jia'], ['kai'], ['lu'], ['lu'], ['min'], ['pu'], ['rong'], ['tuo'], ['xin'], ['xun'], ['yi'], ['yan'], ['zhe']] ['萃', '孚', '骅', '瀚', '珈', '迦', '恺', '鹭', '泸', '岷', '濮', '榕', '沱', '鑫', '浔', '怡', '兖', '柘']
以上排序 僅按拼音首字母 排序
我回答過的問題: Python-QA
转成gbk编码,然后用任意排序算法即可
pinyin4j
应该可以算出每个汉字的首字母,应该有这种封装好的类,看你用什么语言了,然后在进行排序
发现一个php的函数 叫collator_sort(),可以排序,但是如果是联动排序就比较麻烦,之前做的东西是通过array_multisort联动排序的
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
Python 的話可以利用 pypinyin:
結果:
以上排序 僅按拼音首字母 排序
我回答過的問題: Python-QA
转成gbk编码,然后用任意排序算法即可
pinyin4j
应该可以算出每个汉字的首字母,应该有这种封装好的类,看你用什么语言了,然后在进行排序
发现一个php的函数 叫collator_sort(),可以排序,但是如果是联动排序就比较麻烦,之前做的东西是通过array_multisort联动排序的