python实现将汉字转换成汉语拼音的库
本文实例讲述了python实现将汉字转换成汉语拼音的库。分享给大家供大家参考。具体分析如下:
下面的这个python库可以很容易的将汉字转换成拼音,其中用到了一个word.data的字典,可点击此处本站下载。
#!/usr/bin/envpython #-*-coding:utf-8-*- __version__='0.9' __all__=["PinYin"] importos.path classPinYin(object): def__init__(self,dict_file='word.data'): self.word_dict={} self.dict_file=dict_file defload_word(self): ifnotos.path.exists(self.dict_file): raiseIOError("NotFoundFile") withfile(self.dict_file)asf_obj: forf_lineinf_obj.readlines(): try: line=f_line.split('') self.word_dict[line[0]]=line[1] except: line=f_line.split('') self.word_dict[line[0]]=line[1] defhanzi2pinyin(self,string=""): result=[] ifnotisinstance(string,unicode): string=string.decode("utf-8") forcharinstring: key='%X'%ord(char) result.append(self.word_dict.get(key,char).split()[0][:-1].lower()) returnresult defhanzi2pinyin_split(self,string="",split=""): result=self.hanzi2pinyin(string=string) ifsplit=="": returnresult else: returnsplit.join(result) if__name__=="__main__": test=PinYin() test.load_word() string="欢迎来到毛票票" print"in:%s"%string print"out:%s"%str(test.hanzi2pinyin(string=string)) print"out:%s"%test.hanzi2pinyin_split(string=string,split="-")
希望本文所述对大家的Python程序设计有所帮助。