有时在处理文件时候,我们需要将中文姓名转换为拼音,或者是转换为拼音首字母,本文将介绍三种Python实现的方法,最后给一个批量操作的代码案例!

一、xpinyin

开门见山,Python中文字转拼音可以使用xpinyin,直接使用pip安装即可

pip install xpinyin -i http://pypi.douban.com/simple --trusted-host pypi.douban.com

接着导入xpinyin下的 Pinyin 方法如下

from xpinyin import Pinyin

首先试试中文名转拼音,

p = Pinyin()

result1 = p.get_pinyin('叶伏天')

result1

结果如下:

'ye-fu-tian'

tone_marks可以显示声调

result2 = p.get_pinyin('叶伏天', tone_marks='marks')

结果如下:

'yè-fú-tiān'

去掉空格

s = result1.split('-')

result3 = s[0].capitalize() + ' ' + ''.join(s[1:]).capitalize()

result3

结果如下:

'Ye Futian'

有时需要中文名转拼音首字母,也很简单

二、pypinyin

另一种方法是使用pypinyin,安装同样可以使用pip

# 安装

pip install pypinyin -i http://pypi.douban.com/simple --trusted-host pypi.douban.com

直接导入就行

import pypinyin

再来看看中文名转拼音的实现办法

result1 = pypinyin.pinyin('叶庭云', style=pypinyin.NORMAL)

result1

结果如下:

[['ye'], ['ting'], ['yun']]

启用多音节来实现声调

result2 = pypinyin.pinyin('叶庭云', heteronym=True)

result2

结果如下:

[['yè', 'xié'], ['tíng'], ['yún']]

因为返回的是一个嵌套的list,所以需要简单调整一下

result_ = [i[0] for i in result1]

result3 = result_[0].capitalize() + ' ' + ''.join(result_[1:]).capitalize()

result3

结果如下:

'Ye Tingyun'

启用多音字模式时,竟然发现 ‘叶’ 也是多音字,查询了资料发现确实是这样,涨知识啦!

下面是中文名转拼音首字母的方法

三、snownlp

最后一种办法是使用snownlp,同样的pip安装与导入如下:

# 安装

pip install snownlp -i http://pypi.douban.com/simple --trusted-host pypi.douban.com

# 导入

from snownlp import SnowNLP

中文名转拼音

s = SnowNLP('叶庭云')

s.pinyin

结果如下:

['ye', 'ting', 'yun']

将list转为字符串

result4 = s.pinyin[0].capitalize() + ' ' + ''.join(s.pinyin[1:]).capitalize()

result4

结果如下:

'Ye Tingyun'

最后是中文名转拼音首字母

四、批量将中文名转换成拼音

现在,掌握了基本使用后,我们就能利用批量操作来解放双手

import pypinyin

import pandas as pd

df = pd.read_excel('学生名单_test.xls')

df.head()

先导入一份学生名单如下

下面是使用pypinyin批量将全部学生的中文姓名转换为拼音

pinyin_name = []

first_pinyin = []

for i in df['姓名']:

result = pypinyin.pinyin(i, style=pypinyin.NORMAL)

result_ = [i[0] for i in result]

result2 = result_[0].capitalize() + ' ' + ''.join(result_[1:]).capitalize()

result3 = ''.join([i[0].upper() for i in result_])

print(result2, i, sep=' ')

pinyin_name.append(result2)

first_pinyin.append(result3)

df['英文名'] = pinyin_name

df['拼音首字母'] = first_pinyin

df.head()

或者是转换为拼音首字母,运行结果如下:

PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取

标签:拼音,Python,pinyin,pypinyin,如下,一秒,result,capitalize

来源: https://blog.csdn.net/pythonlaodi/article/details/110128527

python姓名转拼音_实用小技巧,Python一秒将全部中文姓名转为拼音!相关推荐

  1. python拼音名_实用小技巧,Python一秒将全部中文姓名转为拼音!

    有时在处理文件时候,我们需要将中文姓名转换为拼音,或者是转换为拼音首字母,本文将介绍三种Python实现的方法,最后给一个批量操作的代码案例!一.xpinyin 开门见山,Python中文字转拼音可以 ...

  2. python 拼音姓名排序_实用小技巧,Python一秒将全部中文姓名转为拼音!

    有时在处理文件时候,我们需要将中文姓名转换为拼音,或者是转换为拼音首字母,本文将介绍三种Python实现的方法,最后给一个批量操作的代码案例! 一.xpinyin 开门见山,Python中文字转拼音可 ...

  3. python中拼音怎么用_实用小技巧,Python一秒将汉字转为拼音

    大家好,欢迎来到Crossin的编程教室! 有时在处理文件时候,我们需要将中文汉字转换为拼音或者拼音首字母的需求:还有的时候,我们需要对汉字进行按拼音字母排序(汉字的默认排序是编码序而非拼音序).针对 ...

  4. python将汉字转为拼音字母_实用小技巧,Python一秒将汉字转为拼音

    大家好,欢迎来到Crossin的编程教室! 有时在处理文件时候,我们需要将中文汉字转换为拼音或者拼音首字母的需求:还有的时候,我们需要对汉字进行按拼音字母排序(汉字的默认排序是编码序而非拼音序).针对 ...

  5. python客户端软件开发_妙小程python客户端

    妙小程python客户端官方版是一款由妙小程开发的学习Python课程的学习软件,妙小程python客户端最新版软件拥有丰富代码库,编程更加酷炫,妙小程python客户端集有趣.高科技.有温度于一身, ...

  6. 5弹出搜索框_实用小技巧,电脑总是弹出广告,手把手教你永久关闭广告弹窗...

    在使用电脑时,总是会遇到各种各样的广告弹窗.这些广告弹窗往往附属在某些实用上件,因此我们又不能卸载相应的软件.在电脑开机或者当我们正在编辑文档时,这些莫名其妙的广告弹窗很影响心情,下面教大家如何永久关 ...

  7. Python 列表推导式的实用小技巧

    1. 产生200个1000以内的随机数 >>> L1=[random.randrange(1,1000) for _ in range(200)] >>> type ...

  8. python 视频加字幕_【小技巧】用Python给你的视频添加字幕

    本文建议阅读时间 8 min 在平常调试代码时,需要对视频添加一些文字说明,下面使用 Python 的 OpenCV 和 PIL 对一个视频进行添加文字. 对于加在视频中的文字的字体是可以根据喜好选择 ...

  9. 允许网站使用相机和麦克风_实用小技巧(十九):获取相机和麦克风权限

    版本记录 版本号 时间 V1.0 2017.07.21 前言 功能需求 判断照相机和麦克风的权限. 功能实现 下面我们就用#import 这个库,来获取照相机和麦克风的权限. 下面我们就直接看代码. ...

  10. 小甲鱼python课后题百度云盘_【小甲鱼python课后题.doc】下载 - 面包树

    |- [www.xiaogegh.com 本干货来自笑哥共享网] - 文件夹 |- 鱼c小甲鱼零基础学python全套课后题及答案.doc - 8.10 MB |- 096Pygame:飞机大战7.m ...

最新文章

  1. 让机器“自愈化”引领新科技变革
  2. 050_Unicode字符官方标准一
  3. Content Compression Resistance和Content Hugging
  4. matlab2012b帮助中字体大小调整
  5. 17.默认值Default.rs
  6. [SpringSecurity]web权限方案_用户授权_注解使用
  7. PaaS、DevOps、OpenShift与业务中台的实现
  8. 17 岁高中生独立开发全球疫情追踪网站火了!
  9. linux下下安装jdk-6u45-linux-x64.bin
  10. python re —— 自然语言处理与正则表达式
  11. 网易高并发优化 | 公开课-02
  12. 计算机理工 教学计划,教学计划格式-华南理工大学计算机科学与工程学院.DOC
  13. mybatis mysql 自增_利用Java的MyBatis框架获取MySQL中插入记录时的自增主键
  14. FbinstTool最简单制作U盘启动ISO格式(金测)
  15. Java后台调用第三方接口
  16. 概率论与数理统计公式整理
  17. RAID磁盘阵列与配置
  18. 沁恒微电子CH347是一款高速USB总线转接芯片
  19. 全志平台Android开关核进程迁移导致游戏卡顿调试记录
  20. VMware虚拟网络交换机的优点和缺点

热门文章

  1. 『HarmonyOS』万物互联,分布式操作系统
  2. 第五章、 Linux 常用网络指令
  3. PMP练习199题答案解析版
  4. ndows优化大师 免费版,Windows7优化大师
  5. 计算机公式与函数乘法,excel里减法函数是哪个?-excel函数公式乘法
  6. 计算机快捷键屏幕保护是什么原因,电脑屏幕保护_电脑屏幕保护快捷键
  7. 【PCIe】【翻译】AER 内核驱动 《pcieaer-howto》PCI Express高级错误报告驱动程序指南
  8. cleanmymac2023免费版纯净mac电脑系统管家
  9. WIN8转WIN7的两三事
  10. macbook视频格式转换_Mac视频格式转换器:6款最好的免费工具