2010-08-26 59 views

回答

6

使用Python可能的解決方案:

我認爲Unicode數據庫包含了中國文字拼音羅馬拼音,但這些並不包括在unicodedata模塊的數據。

但是,你可以使用一些外部的庫,例如cjklib,例如:

# coding: UTF-8 
import cjklib 
from cjklib.characterlookup import CharacterLookup 

c = u'好' 

cjk = CharacterLookup('T') 
readings = cjk.getReadingForCharacter(c, 'Pinyin') 
for r in readings: 
    print r 

輸出:

hāo 
hǎo 
hào 

UPDATE

cjklib配備了一個獨立的cjknife實用程序, micht幫助。一些用法描述如下:here

+1

..如果你想要ascii-only或數字表示,你可以找到如何在文檔中做到這一點,或者你可以選擇第一個拼音和刪除口音:http://stackoverflow.com/questions/517923/what-is-the-best-方式去除的,accen ts-in-a-python-unicode-string – mykhal 2010-08-26 02:48:55

+0

Unicode確實有一個Character to Pinyin映射表,它被稱爲Unihan並且有大量數據。 :) – cburgmer 2012-05-20 20:53:23

+0

'提高ValueError,'未知區域設置:%s'%localename ValueError:未知區域設置:UTF-8'任何想法? – jokoon 2012-09-16 22:53:53