利用python将中文名转换为英文名

问题描述:

工作中偶尔会遇到怎么把中文名转成英文之类的问题,下意识的就会想到python能不能做。
例如:张三,走四方,转为 San Zhang, Sifang Zou。


解决思路:

  1. 读取excel名单,可以利用pandas 的read_excel方法;

  2. pypinyin 把汉字转为pinyin列表;

  3. 从列表中拿到姓、名;

  4. 拼接为 名+姓;

  5. 首字母大写。

话不多说,跑一下试试喽。

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就可以了。

你可能感兴趣的:(python)