



下載本文檔
版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第基于Python3編寫(xiě)一個(gè)GUI翻譯器'構(gòu)建翻譯函數(shù)'
#text:需要翻譯的內(nèi)容,to_language:目標(biāo)語(yǔ)言類(lèi)型,text_language:當(dāng)前語(yǔ)言類(lèi)型。
deftranslate(text,to_language='en',text_language='auto'):
text=parse.quote(text)
url1=url%(text,to_language,text_language)
repsonse=requests.get(url1)
data=repsonse.text
print(f'輸出內(nèi)容:{data}')
expr=r'(s)(.*)'
result=re.findall(expr,data)
print(f'{result}')
if(len(result)==0):
return""
returnhtml.unescape(result[0])
'GUI搭建'
#設(shè)置主題
sg.theme('bluepurple')
#設(shè)置字體
font=("fangsong",12)
#菜單欄設(shè)置
menu=[["Help",["About","Item","Author"]]]
#語(yǔ)言選擇(前端顯示),默認(rèn)只有6種,可以自己添加
value=['漢語(yǔ)','英語(yǔ)','日語(yǔ)','法語(yǔ)','俄語(yǔ)','自動(dòng)']
#語(yǔ)言選擇(后端執(zhí)行時(shí))
var=['zh','en','ja','fr','ru','auto']
#語(yǔ)言字典配置
dic=dict(zip(value,var))
#GUI布局
layout=[[sg.Menu(menu,tearoff=False)],
[sg.Text(text='輸入需要翻譯內(nèi)容',size=(26,1)),
sg.Text(text='將',size=(2,1),justification='center'),
sg.Combo(values=value,key='from',size=(10,1)),
sg.Text(text='翻譯為',size=(5,1),justification='center'),
sg.Combo(values=value,key='to',size=(10,1))],
[sg.Multiline(key='-IN-',size=(60,8),font=font)],
[sg.Text(text='翻譯結(jié)果',size=(30,1),font=font)],
[sg.Multiline(key='-OUT-',size=(60,8),font=font)],
[sg.Text(text='',size=(36,1)),
sg.Button("翻譯",size=(6,1)),
sg.Button("清除",size=(6,1)),
sg.Button("退出",size=(6,1))
#設(shè)置窗口名稱(chēng),窗口布局,以及圖標(biāo)
window=sg.Window("桌面翻譯器",layout,icon='CT.ico')
'邏輯語(yǔ)句執(zhí)行'
whileTrue:
#定義事件event,返回值values
event,values=window.read()
#點(diǎn)擊“X”或者“退出”按鈕時(shí)才退出
ifeventin(None,"退出"):
break
#點(diǎn)擊翻譯按鈕
ifevent=="翻譯":
ifvalues["to"]==''orvalues["from"]=='':
sg.Popup("請(qǐng)選擇語(yǔ)言后再重試")
else:
tar=translate(values["-IN-"],dic[values["to"]],dic[values["from"]])
window["-OUT-"].Update(tar)
#點(diǎn)擊清除按鈕
ifevent=="清除":
window["-IN-"].update("")
window["-OUT-"].update("")
ifevent=="About":
#Popup提示彈窗,給出提示信息
sg.Popup("使用方法:",
"'翻譯'確認(rèn)輸入,并輸出翻譯結(jié)果",
"'清除'清除已有輸入,清空翻譯的結(jié)果",
"'退出'取消,并退出App",
title='',font=font,auto_close=1)
ifevent=="Item":
sg.Popup("翻譯類(lèi)型:",
"'輸入類(lèi)型'輸入的語(yǔ)言類(lèi)型",
"'輸出類(lèi)型'輸出的語(yǔ)言類(lèi)型",
title='',font=font,auto_close=1)
ifevent=="Author":
sg.Popup("作者簡(jiǎn)介:",
"姓名:XXXXXX",
"Wechat:XXXXXX",
"E-mail:XXXXXX@",title='',font=font,auto_close=1)
window.close()
運(yùn)行結(jié)果:
3、總結(jié)
看到這里,今天的分享差不多就要結(jié)束了。
關(guān)于PySimpleGUI的介紹,
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- MT/T 1223-2024露天煤礦排土場(chǎng)土地復(fù)墾作物種植技術(shù)規(guī)程
- 審計(jì)學(xué)試題及答案
- 軟件設(shè)計(jì)師職業(yè)生涯規(guī)劃試題及答案
- 網(wǎng)絡(luò)工程師歷年考題回顧試題及答案
- 關(guān)鍵問(wèn)題2025年西方政治制度的可持續(xù)性試題及答案
- 公共政策實(shí)施中的多方利益平衡試題及答案
- 機(jī)電工程項(xiàng)目風(fēng)險(xiǎn)考試題
- 深化機(jī)電工程社會(huì)服務(wù)體系建設(shè)及試題與答案
- 市場(chǎng)導(dǎo)向的公共政策分析試題及答案
- 軟件設(shè)計(jì)師考試技巧與經(jīng)驗(yàn)試題及答案
- T/BCEA 001-2022裝配式建筑施工組織設(shè)計(jì)規(guī)范
- 2025年《高級(jí)養(yǎng)老護(hù)理員》考試練習(xí)題庫(kù)含答案
- 骨科手術(shù)圍手術(shù)期管理
- 2025年檔案法制知識(shí)競(jìng)賽題庫(kù)(含答案)
- 2025國(guó)家開(kāi)放大學(xué)《人類(lèi)發(fā)展與環(huán)境保護(hù)》形成性考核123答案+終結(jié)性考試答
- DB44-T 2458-2024 水庫(kù)土石壩除險(xiǎn)加固設(shè)計(jì)規(guī)范
- 2025年廣東省深圳市龍華區(qū)中考數(shù)學(xué)二模試卷
- 【8地 會(huì)考】2022-2024年安徽省初中(八年級(jí))中考初二會(huì)考地理試卷(3年真題)
- 超級(jí)蘆竹種植可行性報(bào)告
- 項(xiàng)目管理合同框架協(xié)議
- 【MOOC】電子技術(shù)實(shí)驗(yàn)-北京科技大學(xué) 中國(guó)大學(xué)慕課MOOC答案
評(píng)論
0/150
提交評(píng)論