python:tkinter + snownlp + pinyin = 中译英词典

python jieba 是中文分词,snownlp 是自然语言处理,pinyin 拼音和中译英词典。

pip install jieba;

pip install snownlp;

pip install pinyin; 拼音

存在 Lib/site-packages/pinyin/cedict.py 中译英词典
tk_cedict.py 程序如下

# -*- coding: utf-8 -*-
""" 查询拼音,中译英词典 """
#import jieba
import tkinter as tk
#from tkinter import *
from tkinter import messagebox
import pinyin
import snownlp

# 中译英词典
from pinyin import cedict 
cedict.init() # 初始化 中译英词典

def translate():
    """ 中译英 """
    if not entry.get():
        messagebox.showinfo("温馨提示","输入中文不能为空")
        return
    stmt = entry.get()
    print(stmt)
    wlist = snownlp.SnowNLP(stmt).words
    pinyins = snownlp.SnowNLP(stmt).pinyin
    words = ' '.join(wlist)
    var1.set(words)
    pyin = pinyin.get(words)
    listbox.delete(0, tk.END)
    listbox.insert(tk.END, pyin)	
    listbox.insert(tk.END, pinyins)
    for w in wlist:
        english = cedict.translate_word(w, dictionary=['simplified'])
        listbox.insert(tk.END, f"{w}: {english}")

# main()
root = tk.Tk()
root.title("查拼音,中译英词典")
#root.geometry("640x480")
root.resizable(width=True, height=False)
# 输入框布局
frame1 = tk.Frame(root, width=80, height=30)
frame1.pack(side="top")
entry = tk.Entry(frame1, width=60)
entry.pack(side="left")
button = tk.Button(frame1, text="查拼音,中译英词典", command=translate)
button.pack(side="left", padx=5, pady=2)
# 退出按钮
quit_btn = tk.Button(frame1, text="退出", fg="red", command=root.quit)
quit_btn.pack(side="right", padx=5, pady=2)
# 显示栏
var1 = tk.StringVar()
label = tk.Label(root, font="Song 12", fg="purple", textvariable=var1)
label.pack()
# 列表框
listbox = tk.Listbox(root, width=80, font="Song 12")
listbox.pack(side="bottom", fill='both', padx=5, pady=5)

root.mainloop()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值