paip.输入法英文词库的处理 python 代码 o4

时间:2023-03-08 20:04:18

paip.输入法英文词库的处理 python 代码 o4



目标是eng>>>中文>>atian

当输入非atian词的时候儿,能打印出  atian pinyin >>>english提示..  ,在根据英文输入..





=====下载源词库

要下载一个格式好的词库文件还是很困难的..几乎没..只好自己写兰...



下载一个-GRE 8k词库..excel,删除不要的datasheet,导入mysql

格式如下:

abandon    v./n.放弃;放纵     



============需要做如下的数据清理:

分割出词性,分割出多个的中文词..如下

abandon    放弃         v./n.

abandon    放纵         v./n.





作者: 老哇的爪子Attilax 艾龙,  EMAIL:1466519819@qq.com

来源:http://blog.****.net/attilax



====对应的代码python

conn2 = mysql.connector.connect(user=user, password=pwd, host=host, database=db)



cursorInsert = conn2.cursor()

import dicUtil

from dicUtil import *

#this must match field amout and order in sql

for (en, cn, id) in cursor:

    if(hasTsisin(cn)):

        tsisin=left_ByDot(cn)

        cnstr=right_ByDot(cn)

    else:

        tsisin="nonx."

        cnstr=cn

    cnstr=cnstr.replace(";", ",")

    cnstr=cnstr.replace(",", ",")  

    

    cnstr_a=cnstr.split(",")

#    for index8 in range(len(list)):

#        print index8

#      print list[index8]

    print (" "+tsisin+"---"+cnstr)

    for index,v in enumerate(cnstr_a):

      #  print ()index

      #  print (v) strip

        sql=" insert into grejx_def (en,cn,nAdjV)values('@en','@cn','@adj')"

        sql=sql.replace("@en", trim(en)).replace("@cn", v.strip()).replace("@adj", tsisin.strip())

        print(sql)

        reslt=cursorInsert.execute(sql)

        

        print("---insert resl:")

        print(reslt)

        conn2.commit()

       

def hasTsisin(str):

    try:

        lastIndex=str.rindex(".")

        #print(lastIndex)

        return True

    except :

        print("--no has dot"+ str)

        return False       



参考

excel背单词-TOEFL-GRE - 下载频道 - ****.NET