工作中偶尔会遇到怎么把中文名转成英文之类的问题,下意识的就会想到python能不能做。
例如:张三,走四方,转为 San Zhang, Sifang Zou。
读取excel名单,可以利用pandas 的read_excel方法;
用pypinyin 把汉字转为pinyin列表;
从列表中拿到姓、名;
拼接为 名+姓;
首字母大写。
话不多说,跑一下试试喽。
from pypinyin import lazy_pinyin
import pandas as pd
ex = pd.read_excel("测试名单.xlsx")
print(ex.head())
for i in range(ex.shape[0]):
zh_name = (ex.ix[i,1])
name_list = lazy_pinyin(zh_name)
xin = name_list[0]
ming_list = name_list[1:]
ming = ""
for y in ming_list:
ming = ming + y
en_name = ming + " " + xin
en_name = en_name.title().lstrip()
print (en_name)
本文测试环境为python3,跑完直接把控制台的内容粘贴到excel就可以了。