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 enumerate遍历数组示例应用
Sep 06 Python
python实现的简单RPG游戏流程实例
Jun 28 Python
Python的Django REST框架中的序列化及请求和返回
Apr 11 Python
一个基于flask的web应用诞生 flask和mysql相连(4)
Apr 11 Python
python使用__slots__让你的代码更加节省内存
Sep 05 Python
python3使用pandas获取股票数据的方法
Dec 22 Python
python3使用flask编写注册post接口的方法
Dec 28 Python
使用turtle绘制五角星、分形树
Oct 06 Python
Python3实现英文字母转换哥特式字体实例代码
Sep 01 Python
python 实现的IP 存活扫描脚本
Dec 10 Python
python实现无边框进度条的实例代码
Dec 30 Python
Python find()、rfind()方法及作用
Dec 24 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
150kHz到30Mhz完全冲浪手册
2020/03/20 无线电
Views rows style模板重写代码
2011/05/16 PHP
PHP可变变量学习小结
2015/11/29 PHP
Laravel框架实现简单的学生信息管理平台案例
2019/05/07 PHP
php基于协程实现异步的方法分析
2019/07/17 PHP
myeclipse安装jQuery插件的方法
2011/03/29 Javascript
使用Jquery获取带特殊符号的ID 标签的方法
2014/04/30 Javascript
jQuery中index()的用法分析
2014/09/05 Javascript
JQuery判断checkbox是否选中及其它复选框操作方法合集
2015/06/01 Javascript
javascript弹出带文字信息的提示框效果
2016/07/19 Javascript
Vue keep-alive实践总结(推荐)
2017/08/31 Javascript
ES6中Array.includes()函数的用法
2017/09/20 Javascript
详解在vue-cli项目中使用mockjs(请求数据删除数据)
2017/10/23 Javascript
jQuery实现鼠标响应式淘宝动画效果示例
2018/02/13 jQuery
Bootstrap开发中Tab标签页切换图表显示问题的解决方法
2018/07/13 Javascript
node.js处理前端提交的GET请求
2019/08/30 Javascript
详解小程序BackgroundAudioManager踩坑之旅
2019/12/08 Javascript
vue实现输入一位数字转汉字功能
2019/12/13 Javascript
微信小程序实现滑动操作代码
2020/04/23 Javascript
微信小程序实现简单文字跑马灯
2020/05/26 Javascript
vue和H5 draggable实现拖拽并替换效果
2020/07/29 Javascript
React冒泡和阻止冒泡的应用详解
2020/08/18 Javascript
原生JavaScript实现轮播图
2021/01/10 Javascript
Python入门篇之函数
2014/10/20 Python
Python中fnmatch模块的使用详情
2018/11/30 Python
BP神经网络原理及Python实现代码
2018/12/18 Python
Python Pandas数据中对时间的操作
2019/07/30 Python
Pytorch实现基于CharRNN的文本分类与生成示例
2020/01/08 Python
python 计算方位角实例(根据两点的坐标计算)
2020/01/17 Python
django处理select下拉表单实例(从model到前端到post到form)
2020/03/13 Python
荷兰和比利时时尚鞋店:Van Dalen
2018/04/23 全球购物
体育教师自荐信范文
2013/12/16 职场文书
恐龙的灭绝教学反思
2014/02/12 职场文书
门面房租房协议书
2014/12/01 职场文书
2016年入党心得体会范文
2016/01/23 职场文书
Java 超详细讲解数据结构中的堆的应用
2022/04/02 Java/Android