python做翻譯軟件詳解,小白也看得明白
前言
對於我這種英語比較差的人來說,無論是敲代碼還是看文檔,
那都是離不開翻譯軟件的,於是我想自己用python做一個翻譯軟件,
花瞭一個小時,終於做瞭出來瞭,支持各種語言的翻譯
一、需要的庫
translate:
谷歌翻譯的第三方包,可以實現多種語言之間的相互翻譯。
tkinter:
Tkinter 是 Python 的標準 GUI 庫。Python 使用 Tkinter 可以快速的創建 GUI 應用程序。
沒有安裝的話,復制下面的命令,直接安裝
pip install translate pip install tkinter
二、分析處理
1.步驟
要實現翻譯軟件,需要完成兩樣東西:
1.翻譯過程的代碼實現
2.圖形界面代碼的實現
2.思路
我的思路是先整體完成翻譯的代碼,然後再結合圖形界面的代碼重新整合,開搞!
三.代碼的實現
1.翻譯部分
翻譯部分的代碼:
from translate import Translator lang1=input("想翻譯的語言:") lang2=input("翻譯為: ") trans_all=Translator(from_lang = lang1.capitalize(), to_lang=lang2.capitalize()) text=input("需要翻譯的文本") text_to=trans_all.translate(text) print(text_to)
展示一手:
這部分完成後我們來完成圖形界面
2.圖形界面代碼
這是我設置的界面的大小:
圖形界面初始化:
# 初始化,畫佈大小 root = Tk() root.geometry('340x540') # 輸入語言提示 lb1 = Label(root, text="language " "\t""-->" "\t" + " language") lb1.place(relx=0.1, rely=0.05, relwidth=0.8, relheight=0.05) # 第一個語言輸入框 inp1 = Entry(root) inp1.place(relx=0.1, rely=0.1, relwidth=0.3, relheight=0.1) # 第二個語言輸入框 inp2 = Entry(root) inp2.place(relx=0.6, rely=0.1, relwidth=0.3, relheight=0.1)
效果如下:
有強迫癥的我,在這個地方調瞭好久好久…最後終於對稱瞭…心累
然後完成翻譯按鈕和文本的輸入,輸出框
# 調用翻譯 # 文字提示 lb2 = Label(root, text="輸入需要翻譯的文本") lb2.place(relx=0.1, rely=0.25, relwidth=0.8, relheight=0.05) # 輸入需要翻譯的文本 inp3 = Entry(root) inp3.place(relx=0.1, rely=0.35, relwidth=0.8, relheight=0.15) # 翻譯按鈕 btn1 = Button(root, text='翻譯', command=translate_to) btn1.place(relx=0.4, rely=0.5, relwidth=0.2, relheight=0.1) # 翻譯的結果 txt = Text(root) txt.place(rely=0.7, relheight=0.2) root.mainloop()
最後呈現的效果:
到這裡他隻是一個軀殼,還沒有靈魂,接下來,我們為他註入靈魂。
3.整合
將翻譯的代碼一起整合後,終於大功告成
先上效果展示,再上代碼:
ohhhhh完美!!
代碼:
from translate import Translator from tkinter import * def translate_to(): lang1 = inp1.get() # 被翻譯的語言 lang2 = inp2.get() # 翻譯出的語言 from_to = Translator(from_lang=lang1.capitalize(), to_lang=lang2.capitalize()) text = inp3.get() # 得到輸入框的文本 ans = from_to.translate(text) # 執行翻譯 txt.insert(END, ans) # 將翻譯的結果給到文本框txt inp3.delete(0, END) # 清空輸入框 # 初始化,畫佈大小 root = Tk() root.geometry('340x540') # 輸入語言提示 lb1 = Label(root, text="language " "\t""-->" "\t" + " language") lb1.place(relx=0.1, rely=0.05, relwidth=0.8, relheight=0.05) # 第一個語言輸入框 inp1 = Entry(root) inp1.place(relx=0.1, rely=0.1, relwidth=0.3, relheight=0.1) # 第二個語言輸入框 inp2 = Entry(root) inp2.place(relx=0.6, rely=0.1, relwidth=0.3, relheight=0.1) # 調用翻譯 # 文字提示 lb2 = Label(root, text="輸入需要翻譯的文本") lb2.place(relx=0.1, rely=0.25, relwidth=0.8, relheight=0.05) # 輸入需要翻譯的文本 inp3 = Entry(root) inp3.place(relx=0.1, rely=0.35, relwidth=0.8, relheight=0.15) # 翻譯按鈕 btn1 = Button(root, text='翻譯', command=translate_to) btn1.place(relx=0.4, rely=0.5, relwidth=0.2, relheight=0.1) # 翻譯的結果 txt = Text(root) txt.place(rely=0.7, relheight=0.2) root.mainloop()
總結
這個小軟件或許不是很高大上,
但是每一種嘗試和發現,都能成為我進步的階梯
結果是看客們茶餘飯後的談資
過程是親歷者經年留影的寶藏
如果喜歡的話,給個關註和點贊吧
到此這篇關於python做翻譯軟件詳解,小白也看得明白的文章就介紹到這瞭,更多相關python翻譯軟件內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- Python實戰項目之MySQL tkinter pyinstaller實現學生管理系統
- python基於Tkinter實現人員管理系統
- Python基礎之tkinter圖形化界面學習
- python 制作一個gui界面的翻譯工具
- 基於Python制作一個多進制轉換工具