Python_用pypinyin将中文名转化为英文名

1.在处理数据的时候,很多时候采用的都是英文名的方式,避免遇到一些中文转义错误,这里用pypinyin来进行转化。

2.总结经验积累,目前有两种写法。

3.方式:(前提,pypinyin是python的第三方库,需要进行安装可使用):

  第一种:将整体姓名转化为拼音,再将每个字符分开,重新进行首字母大写,再合并一起。(这种写法,3个字以内的名字可以进行转化,如果大于3个需要在最后一个字符开始修改)

  第二种:在传数据的时候就将每个字符分开,然后进行首字母大写,再合并一起。(这种写法,有多少个都可以进行转化)

4.官网文档参数:https://pypinyin.readthedocs.io/zh_CN/master/

"""
coding:utf-8
@Software:PyCharm
@Time:2022/12/29 10:16
@author:wp_panda
"""


import pypinyin


def trans_one(str):
    pinyin_name = pypinyin.pinyin(str, style=pypinyin.NORMAL)
    pinyin_name_ = [i[0] for i in pinyin_name]
    trans_name = pinyin_name_[0].capitalize() + pinyin_name_[1].capitalize() + ''.join(pinyin_name_[2:]).capitalize()
    return trans_name


def trans_two(str):
    trans_list = []
    for pinyin_name in pypinyin.pinyin(str, style=pypinyin.NORMAL):
        for pinyin_name_ in pinyin_name:
            pinyin_name__ = pinyin_name_.capitalize()
            trans_list.append(pinyin_name__)
    return ''.join(trans_list)


if __name__ == '__main__':
    print(trans_one('欧名霖'))
    print(trans_two('欧名霖'))
    print(trans_one('欧莱'))
    print(trans_two('欧莱'))
    print(trans_one('欧名海洋'))
    print(trans_two('欧名海洋'))

posted @ 2022-12-29 10:38  许个未来—  阅读(867)  评论(0编辑  收藏  举报