python实现将汉字转换成汉语拼音的库


Posted in Python onMay 05, 2015

本文实例讲述了python实现将汉字转换成汉语拼音的库。分享给大家供大家参考。具体分析如下:

下面的这个python库可以很容易的将汉字转换成拼音,其中用到了一个word.data 的字典,可点击此处本站下载。

#!/usr/bin/env python
# -*- coding:utf-8 -*-
__version__ = '0.9'
__all__ = ["PinYin"]
import os.path
class PinYin(object):
 def __init__(self, dict_file='word.data'):
  self.word_dict = {}
  self.dict_file = dict_file
 def load_word(self):
  if not os.path.exists(self.dict_file):
   raise IOError("NotFoundFile")
  with file(self.dict_file) as f_obj:
   for f_line in f_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]
 def hanzi2pinyin(self, string=""):
  result = []
  if not isinstance(string, unicode):
   string = string.decode("utf-8")
  for char in string:
   key = '%X' % ord(char)
   result.append(self.word_dict.get(key,char).split()[0][:-1].lower())
  return result
 def hanzi2pinyin_split(self, string="", split=""):
  result = self.hanzi2pinyin(string=string)
  if split == "":
   return result
  else:
   return split.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程序设计有所帮助。

Python 相关文章推荐
Python中的变量和作用域详解
Jul 13 Python
详解K-means算法在Python中的实现
Dec 05 Python
书单|人生苦短,你还不用python!
Dec 29 Python
python实现机器学习之元线性回归
Sep 06 Python
使用Python编写Prometheus监控的方法
Oct 15 Python
对python读写文件去重、RE、set的使用详解
Dec 11 Python
利用python脚本如何简化jar操作命令
Feb 24 Python
详解Python给照片换底色(蓝底换红底)
Mar 22 Python
python flask安装和命令详解
Apr 02 Python
wxpython绘制音频效果
Nov 18 Python
python 申请内存空间,用于创建多维数组的实例
Dec 02 Python
python实现Thrift服务端的方法
Apr 20 Python
python基于Tkinter库实现简单文本编辑器实例
May 05 #Python
python实现的简单窗口倒计时界面实例
May 05 #Python
给Python中的MySQLdb模块添加超时功能的教程
May 05 #Python
用Python实现一个简单的多线程TCP服务器的教程
May 05 #Python
简单介绍Python中的try和finally和with方法
May 05 #Python
python中的闭包用法实例详解
May 05 #Python
Python闭包实现计数器的方法
May 05 #Python
You might like
77A一级收信机修理记
2021/03/02 无线电
ThinkPHP使用心得分享-ThinkPHP + Ajax 实现2级联动下拉菜单
2014/05/15 PHP
php递归删除目录与文件的方法
2015/01/30 PHP
PHP编写RESTful接口的方法
2016/02/21 PHP
php提交过来的数据生成为txt文件
2016/04/28 PHP
Yii框架的redis命令使用方法简单示例
2019/10/15 PHP
sina的lightbox效果。
2007/01/09 Javascript
jquery+正则实现统一的表单验证
2015/09/20 Javascript
基于jQuery实现复选框是否选中进行答题提示
2015/12/10 Javascript
使用jQuery制作浮动工具栏的实例分享
2016/05/13 Javascript
jQuery实现最简单的切换图效果【可兼容IE6、火狐、谷歌、opera等】
2016/09/04 Javascript
在nginx上部署vue项目(history模式)的方法
2017/12/28 Javascript
jQuery创建及操作xml格式数据示例
2018/05/26 jQuery
jQuery实现轮播图及其原理详解
2020/04/12 jQuery
React中阻止事件冒泡的问题详析
2019/04/12 Javascript
ES6中let、const的区别及变量的解构赋值操作方法实例分析
2019/10/15 Javascript
完美解决vue 中多个echarts图表自适应的问题
2020/07/19 Javascript
Element MessageBox弹框的具体使用
2020/07/27 Javascript
Python 调用DLL操作抄表机
2009/01/12 Python
在Python程序和Flask框架中使用SQLAlchemy的教程
2016/06/06 Python
对Pandas MultiIndex(多重索引)详解
2018/11/16 Python
Django restframework 源码分析之认证详解
2019/02/22 Python
如何利用pygame实现简单的五子棋游戏
2019/12/29 Python
使用Python将图片转正方形的两种方法实例代码详解
2020/04/29 Python
Python json格式化打印实现过程解析
2020/07/21 Python
python如何实现word批量转HTML
2020/09/30 Python
HTML5 Blob 实现文件下载功能的示例代码
2019/11/29 HTML / CSS
Sony C++笔试题
2013/03/10 面试题
毕业生求职推荐信
2013/11/04 职场文书
售后专员岗位职责
2013/12/08 职场文书
工商管理本科生求职信
2014/07/13 职场文书
大学本科生职业生涯规划书范文
2014/09/14 职场文书
公司合作协议范文
2014/10/01 职场文书
通知函格式范文
2015/04/27 职场文书
单位实习介绍信
2015/05/05 职场文书
Python中可变和不可变对象的深入讲解
2021/08/02 Python