python中的文生僻字怎么識別

今天小編給大家分享一下python中的文生僻字怎么識別的相關知識點,內(nèi)容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

創(chuàng)新互聯(lián)公司成立與2013年,先為鼎城等服務建站,鼎城等地企業(yè),進行企業(yè)商務咨詢服務。為鼎城企業(yè)網(wǎng)站制作PC+手機+微官網(wǎng)三網(wǎng)同步一站式服務解決您的所有建站問題。

識別方法

在utf-8字符編碼下,一個中文字符占3個字節(jié),但字符的長度只有1。

1、分析中文的方法是否可以靈活為len(bytes(str,'utf-8)==3 and len(string)==1。

2、文本寫作判斷中文后,如果是漢字str.ljust(5),否則為str.ljust(6)。

因為一個漢字占兩個字符的長度。

實例

from pypinyin import pinyin
import re
 
 
class ChangePinyin:
    def __init__(self, filename):
        self.file = filename
        self.lyric = self.read_file()
        self.pinyin = []
 
    def read_file(self):
        with open(self.file, encoding='utf-8') as f:
            return f.readlines()
 
    def write_file(self):
        with open('New_%s' % self.file, 'w', encoding='utf-8') as f:
            print(self.lyric)
            for line in self.lyric:
                # print(line)
                if line.strip() == '':
                    continue
                _new_line = re.sub(r'\s', '', line)
                # 行內(nèi)容轉(zhuǎn)拼音
                _pinyin = ''.join(map(lambda x: x[0].ljust(6), pinyin(_new_line)))
                # 根據(jù)中英文,將行內(nèi)容進行字符與漢字的拆分
                _lyric = self.split_words(_new_line)
                f.write('%s\n%s\n' % (_pinyin, _lyric))
 
    @staticmethod
    def split_words(words):
        word_list = ""
        tmp = ""
        for string in words:
            if len(bytes(string, 'utf-8')) == 3 and len(string) == 1:
                if tmp != '':
                    word_list += tmp.ljust(6)
                    tmp = ""
                word_list += string.ljust(5)
            else:
                tmp += string
        return word_list
 
 
if __name__ == '__main__':
    Main = ChangePinyin('lyric.txt')
    Main.write_file()

以上就是“python中的文生僻字怎么識別”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

網(wǎng)頁題目:python中的文生僻字怎么識別
本文路徑:http://muchs.cn/article14/jpjcge.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站維護、網(wǎng)站導航、網(wǎng)站建設、商城網(wǎng)站面包屑導航、軟件開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設