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 文件和路径操作函数小结
Nov 23 Python
python相似模块用例
Mar 04 Python
使用Python内置的模块与函数进行不同进制的数的转换
Mar 12 Python
Python使用matplotlib绘制三维图形示例
Aug 25 Python
python实现图片筛选程序
Oct 24 Python
python写入文件自动换行问题的方法
Jul 05 Python
python序列化与数据持久化实例详解
Dec 20 Python
python爬虫开发之PyQuery模块详细使用方法与实例全解
Mar 09 Python
使用IPython或Spyder将省略号表示的内容完整输出
Apr 20 Python
Python生成器generator原理及用法解析
Jul 20 Python
Python读取yaml文件的详细教程
Jul 21 Python
图解Python中深浅copy(通俗易懂)
Sep 03 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
ueditor 1.2.6 使用方法说明
2013/07/24 PHP
php实现XSS安全过滤的方法
2015/07/29 PHP
CI框架数据库查询之join用法分析
2016/05/18 PHP
PHP+jquery+CSS制作头像登录窗(仿QQ登陆)
2016/10/20 PHP
PHP工厂模式简单实现方法示例
2018/05/23 PHP
PDO::prepare讲解
2019/01/29 PHP
JavaScript通过RegExp实现客户端验证处理程序
2013/05/07 Javascript
基于JQuery实现滚动到页面底端时自动加载更多信息
2014/01/31 Javascript
JavaScript使用setInterval()函数实现简单轮询操作的方法
2015/02/02 Javascript
JavaScript_object基础入门(必看篇)
2016/06/13 Javascript
JS实现电商放大镜效果
2017/08/24 Javascript
vue init webpack 建vue项目报错的解决方法
2018/09/29 Javascript
基于vue实现滚动条滚动到指定位置对应位置数字进行tween特效
2019/04/18 Javascript
Cordova(ionic)项目实现双击返回键退出应用
2019/09/17 Javascript
element-ui 弹窗组件封装的步骤
2021/01/22 Javascript
[03:01]DOTA2英雄基础教程 露娜
2014/01/07 DOTA
Python break语句详解
2014/03/11 Python
在Django的form中使用CSS进行设计的方法
2015/07/18 Python
Python实现读取邮箱中的邮件功能示例【含文本及附件】
2017/08/05 Python
python实现画圆功能
2018/01/25 Python
Python不使用int()函数把字符串转换为数字的方法
2018/07/09 Python
使用python 写一个静态服务(实战)
2019/06/28 Python
Python批量修改图片分辨率的实例代码
2019/07/04 Python
python psutil监控进程实例
2019/12/17 Python
pytorch实现建立自己的数据集(以mnist为例)
2020/01/18 Python
Python实现猜年龄游戏代码实例
2020/03/25 Python
Python截图并保存的具体实例
2021/01/14 Python
html5新特性与用法大全
2018/09/13 HTML / CSS
英国在线泳装店:Simply Swim
2019/05/05 全球购物
正宗的澳大利亚Ugg靴子零售商:UGG Express
2020/04/19 全球购物
如何开发一个JQuery插件
2016/07/28 面试题
教学实验楼管理制度
2014/02/01 职场文书
爱的承诺书
2015/01/20 职场文书
求职自我评价范文
2015/03/09 职场文书
2015年秋季开学典礼校长致辞
2015/07/16 职场文书
浅谈自定义校验注解ConstraintValidator
2021/06/30 Java/Android