久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術文章
文章詳情頁

教你使用Python pypinyin庫實現(xiàn)漢字轉(zhuǎn)拼音

瀏覽:161日期:2022-06-18 10:47:37
一、前言

這里我先為大家提供一個中文網(wǎng)站,大家可以下去更深入的學習。

https://pypi.org/project/pypinyin/

pypinyin庫,主要有幾下幾個特性:

智能匹配最正確的拼音; 支持多音字、繁體字; 支持多種不同拼音、注音風格;

該庫屬于第三方Python庫,因此在使用之前,需要提前安裝。

pip install pypinyin

然后,導入該庫即可。

import pypinyinfrom pypinyin import pinyin二、pypinyin庫的使用

先來看一個最基本的例子。

from pypinyin import pinyinpinyin('吃飯')

結(jié)果如下:

教你使用Python pypinyin庫實現(xiàn)漢字轉(zhuǎn)拼音

有些字,可能是多音字,再看下面這個例子。

from pypinyin import pinyinpinyin(’馮’,heteronym=True)pinyin(’朝’,heteronym=True)pinyin(’同’,heteronym=True)

結(jié)果如下:

教你使用Python pypinyin庫實現(xiàn)漢字轉(zhuǎn)拼音

仔細觀察上述打印結(jié)果,生成的都是二維列表嵌套,這樣解析起來,真費勁!

能不能生成一維列表呢?

from pypinyin import lazy_pinyinlazy_pinyin('數(shù)據(jù)分析與統(tǒng)計學之美')

結(jié)果如下:

教你使用Python pypinyin庫實現(xiàn)漢字轉(zhuǎn)拼音

問題又來了!

這里雖然是一維列表,但是沒有聲調(diào)了,這不尷尬了嗎?

這里面就涉及到一個風格轉(zhuǎn)換的問題了。

from pypinyin import lazy_pinyin,Stylelazy_pinyin('數(shù)據(jù)分析與統(tǒng)計學之美',style=Style.TONE)

結(jié)果如下:

教你使用Python pypinyin庫實現(xiàn)漢字轉(zhuǎn)拼音

原來這里有一個Style類,供我們選擇風格,常用的風格有下面這14種。

#: 普通風格,不帶聲調(diào)。如: 中國 -> ``zhong guo``NORMAL = 0#: 標準聲調(diào)風格,拼音聲調(diào)在韻母第一個字母上(默認風格)。如: 中國 -> ``zhōng guó``TONE = 1#: 聲調(diào)風格2,即拼音聲調(diào)在各個韻母之后,用數(shù)字 [1-4] 進行表示。如: 中國 -> ``zho1ng guo2``TONE2 = 2#: 聲調(diào)風格3,即拼音聲調(diào)在各個拼音之后,用數(shù)字 [1-4] 進行表示。如: 中國 -> ``zhong1 guo2``TONE3 = 8#: 聲母風格,只返回各個拼音的聲母部分(注:有的拼音沒有聲母,詳見 `#27`_)。如: 中國 -> ``zh g``INITIALS = 3#: 首字母風格,只返回拼音的首字母部分。如: 中國 -> ``z g``FIRST_LETTER = 4#: 韻母風格,只返回各個拼音的韻母部分,不帶聲調(diào)。如: 中國 -> ``ong uo``FINALS = 5#: 標準韻母風格,帶聲調(diào),聲調(diào)在韻母第一個字母上。如:中國 -> ``ōng uó``FINALS_TONE = 6#: 韻母風格2,帶聲調(diào),聲調(diào)在各個韻母之后,用數(shù)字 [1-4] 進行表示。如: 中國 -> ``o1ng uo2``FINALS_TONE2 = 7#: 韻母風格3,帶聲調(diào),聲調(diào)在各個拼音之后,用數(shù)字 [1-4] 進行表示。如: 中國 -> ``ong1 uo2``FINALS_TONE3 = 9#: 注音風格,帶聲調(diào),陰平(第一聲)不標。如: 中國 -> ``ㄓㄨㄥ ㄍㄨㄛ?``BOPOMOFO = 10#: 注音風格,僅首字母。如: 中國 -> ``ㄓ ㄍ``BOPOMOFO_FIRST = 11#: 漢語拼音與俄語字母對照風格,聲調(diào)在各個拼音之后,用數(shù)字 [1-4] 進行表示。如: 中國 -> ``чжун1 го2``CYRILLIC = 12#: 漢語拼音與俄語字母對照風格,僅首字母。如: 中國 -> ``ч г``CYRILLIC_FIRST = 13

如果你的文字中,除了漢字,還有其它符號以及英文,會打印出怎么樣的效果呢?

from pypinyin import lazy_pinyinlazy_pinyin(’Hello,我是😀’,style=Style.TONE)

結(jié)果如下:

教你使用Python pypinyin庫實現(xiàn)漢字轉(zhuǎn)拼音

漢字打印出來就行,英文、表情符號不用打印出來最好,應該怎么辦呢?

這里有一個errors參數(shù)呢,來看看例子。

from pypinyin import lazy_pinyinlazy_pinyin(’Hello,我是😀’,style=Style.TONE,errors=’ignore’)

結(jié)果如下:

教你使用Python pypinyin庫實現(xiàn)漢字轉(zhuǎn)拼音

如果你對pypinyin庫的返回結(jié)果不滿意,可以自定義一個庫呀!這里可以使用load_phrases_dict 方法。

我們先來看一個例子:

from pypinyin import lazy_pinyinlazy_pinyin('黃同學',style=Style.TONE)

結(jié)果如下:

教你使用Python pypinyin庫實現(xiàn)漢字轉(zhuǎn)拼音

“黃同學” 的同,明明是二聲,這里成了四聲。

from pypinyin import lazy_pinyin, load_phrases_dictpersonalized_dict = {’黃同學’: [[’huáng’], [’tòng’], [’xué’]]}load_phrases_dict(personalized_dict)lazy_pinyin('黃同學',style=Style.TONE)

結(jié)果如下:

教你使用Python pypinyin庫實現(xiàn)漢字轉(zhuǎn)拼音

到此這篇關于教你使用Python pypinyin庫實現(xiàn)漢字轉(zhuǎn)拼音的文章就介紹到這了,更多相關Python pypinyin庫內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持好吧啦網(wǎng)!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 丹凤县| 黑河市| 和硕县| 叙永县| 盈江县| 民和| 张家界市| 乳山市| 喜德县| 稻城县| 龙井市| 新田县| 武义县| 平阳县| 东源县| 宜昌市| 玉田县| 府谷县| 京山县| 靖安县| 榕江县| 洛扎县| 镇雄县| 淳安县| 屏边| 昭觉县| 获嘉县| 万年县| 绵阳市| 平阴县| 财经| 象州县| 宁陵县| 陈巴尔虎旗| 龙游县| 宾阳县| 牙克石市| 久治县| 遂溪县| 伊川县| 交城县|