当前位置:   article > 正文

Python实现中文转化为对应的拼音以及拼音转化为相应的中文_用python实现将一个目录下的文件带中文的文件名重命名为拼音

用python实现将一个目录下的文件带中文的文件名重命名为拼音

     由于项目的需求,在使用中文和汉语拼音的转化,自己写了一个版本,感觉很low,本质上就是读数据库,闲来查了一下,居然还真的有这样现成的库,就拿来使用一下吧,代码很简单,就是觉得挺有意思的,下面的样例代码,喜欢玩的可以拿去试试:

 

  1. #!usr/bin/env python
  2. #encoding:utf-8
  3. from __future__ import division
  4. '''
  5. __Author__:沂水寒城
  6. 功能:汉字与拼音的转化
  7. '''
  8. import sys
  9. from xpinyin import Pinyin
  10. from Pinyin2Hanzi import DefaultDagParams
  11. from Pinyin2Hanzi import dag
  12. reload(sys)
  13. sys.setdefaultencoding("utf-8")
  14. def hanzi_to_pinyin(one_str,flag=''):
  15. '''
  16. 将汉字转化为对应的拼音
  17. '''
  18. translator=Pinyin()
  19. one_kw_pinyin=translator.get_pinyin(unicode(one_str), flag).strip()
  20. print '{0} Pinyin is: {1}'.format(one_str.decode('utf-8'),one_kw_pinyin)
  21. return one_kw_pinyin
  22. def pinyin_to_hanzi(pinyin,Topk=5):
  23. '''
  24. 拼音转化为汉字
  25. 汉字存在多意性,所以这里没有一一对应的关系,只能选出概率最高的topk
  26. '''
  27. translator=DefaultDagParams()
  28. result=dag(translator,pinyin,path_num=Topk,log=True)
  29. for item in result:
  30. socre=item.score # 得分
  31. res=item.path # 转换结果
  32. print socre, ''.join([one.decode('utf-8') for one in res])
  33. if __name__ == '__main__':
  34. one_str=u"今天我们从哈尔滨工业大学毕业了"
  35. one_pinyin=hanzi_to_pinyin(one_str,flag='')
  36. one_pinyin_list=['jin','tian','wo','men','bi','ye','le']
  37. pinyin_to_hanzi(one_pinyin_list,Topk=5)
  38. one_pinyin_list=['jin','tian','wo','men','cong','ha','gong','da','bi','ye','le']
  39. pinyin_to_hanzi(one_pinyin_list,Topk=5)

        结果如下:

  1. 今天我们从哈尔滨工业大学毕业了 Pinyin is: jintianwomenconghaerbingongyedaxuebiyele
  2. -2.6794233796 今天我们毕业了
  3. -4.5275475027 今天我们毕业了
  4. -4.73691227283 今天我们毕业乐
  5. -4.78472579465 今天我们毕业勒
  6. -4.78840427787 今天我们毕业肋
  7. -6.54485608597 今天我们从哈工大毕业了
  8. -6.58379180427 今天我们聪哈工大毕业了
  9. -6.58383547606 今天我们匆哈工大毕业了
  10. -6.58493875469 今天我们丛哈工大毕业了
  11. -6.58684225671 今天我们葱哈工大毕业了
  12. [Finished in 1.6s]

 

 

本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/羊村懒王/article/detail/203916?site
推荐阅读
相关标签
  

闽ICP备14008679号