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批量生成任意尺寸的图片
Aug 29 Python
Python3.5编程实现修改IIS WEB.CONFIG的方法示例
Aug 18 Python
深入理解Python 关于supper 的 用法和原理
Feb 28 Python
分析python请求数据
Aug 19 Python
python获取txt文件词向量过程详解
Jul 05 Python
Django stark组件使用及原理详解
Aug 22 Python
Python3实现zip分卷压缩过程解析
Oct 09 Python
Python实现动态给类和对象添加属性和方法操作示例
Feb 29 Python
Python退出时强制运行一段代码的实现方法
Apr 29 Python
python中绕过反爬虫的方法总结
Nov 25 Python
Python爬虫实现selenium处理iframe作用域问题
Jan 27 Python
python随机打印成绩排名表
Jun 23 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
利用php来自动调用不同服务器上的flash
2006/10/09 PHP
php正则匹配文章中的远程图片地址并下载图片至本地
2015/09/29 PHP
php+ajax实现无刷新数据分页的办法
2015/11/02 PHP
PHP数组函数array_multisort()用法实例分析
2016/04/02 PHP
thinkPHP中_initialize方法实例分析
2016/12/05 PHP
PHP反射实际应用示例
2019/04/03 PHP
Yii框架参数配置文件params用法实例分析
2019/09/11 PHP
Javascript限制网页只能在微信内置浏览器中访问
2014/11/09 Javascript
JS在一定时间内跳转页面及各种刷新页面的实现方法
2016/05/26 Javascript
angularjs实现文字上下无缝滚动特效代码
2016/09/04 Javascript
基于JS实现仿百度百家主页的轮播图效果
2017/03/06 Javascript
原生JavaScript来实现对dom元素class的操作方法(推荐)
2017/08/16 Javascript
js序列化和反序列化的使用讲解
2019/01/19 Javascript
简单了解前端渐进式框架VUE
2020/07/20 Javascript
JavaScript 常见的继承方式汇总
2020/09/17 Javascript
[01:51]2014DOTA2西雅图邀请赛 MVP 外卡赛black场间采访
2014/07/09 DOTA
[02:59]2014DOTA2西雅图国际邀请赛 圆满落幕中国夺冠
2014/07/23 DOTA
[01:29]2017 DOTA2国际邀请赛官方英雄手办展示
2017/03/18 DOTA
Python实现抓取网页并且解析的实例
2014/09/20 Python
利用Python破解斗地主残局详解
2017/06/30 Python
python中Switch/Case实现的示例代码
2017/11/09 Python
Python 的字典(Dict)是如何存储的
2019/07/05 Python
django formset实现数据表的批量操作的示例代码
2019/12/06 Python
PyTorch实现更新部分网络,其他不更新
2019/12/31 Python
python time.strptime格式化实例详解
2021/02/03 Python
英国建筑用品在线:Building Supplies Online(BSO)
2018/04/30 全球购物
安全资金保障制度
2014/01/23 职场文书
我的动漫时代的创业计划书范文
2014/01/27 职场文书
劳动之星获奖感言
2014/02/01 职场文书
师德个人剖析材料
2014/02/02 职场文书
公司合作协议范文
2014/10/01 职场文书
2014年仓管员工作总结
2014/11/18 职场文书
2015年幼儿教师个人工作总结
2015/05/20 职场文书
先进基层党组织事迹材料2016
2016/02/29 职场文书
linux下安装redis图文详细步骤
2021/12/04 Redis
Beekeeper Studio开源数据库管理工具比Navicat更炫酷
2022/06/21 数据库