最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

基于Python3編寫一個GUI翻譯器

 更新時間:2022年08月04日 09:41:26   作者:Carl_奕然  
PySimpleGUI就是GUI工具包,用于創(chuàng)建GUI的。本文將利用PySimpleGUI編寫一個GUI翻譯器,感興趣的小伙伴可以跟隨小編一起動手嘗試一下

1、引言

小屌絲:魚哥,你說百度翻譯的準確,還是google翻譯的準確?

小魚:自己翻譯的最準確。

小屌絲:你這… 抬杠。

小魚:沒有啊,英語自己就能翻譯,還需要啥翻譯軟件

小屌絲:如果是俄語,意大利語,西班牙語呢?

小魚:你這是…抬杠。

小屌絲:也沒有啊,我就是覺得網頁版翻譯器太麻煩了。

小魚:早說啊,我這有現成的翻譯器。

小屌絲:嗯?? 你下載的是什么翻譯器?

小魚:你覺得我會下載嗎?

小屌絲:嗯,確實,那就是說,你自己寫了一個唄?

小魚:你答對了。

小屌絲:那趕緊share一下啊。

小魚:曬就曬,正好今天陽光明媚的。

2、代碼實戰(zhàn)

2.1 思路

我們寫的GUI翻譯器,思路:

構建url地址;

構建語言種類;

GUI界面的搭建;

觸發(fā)GUI界面功能操作;

這里提示一下,我們是通過 PySimpleGUI 來進行構建的。

小屌絲:什么是PySimpleGUI呢?

小魚:一句話,PySimpleGUI 就是GUI工具包,用于創(chuàng)建GUI的。

小屌絲:果然是夠簡單,那看代碼吧。

2.2 實戰(zhàn)

由于內容并不復雜,所以,直接上代碼。

代碼展示

#-*- coding: utf-8 -*-
# @Time   : 2022-07-27
# @Author : carl_DJ


import re
import html
from urllib import parse
import requests
import PySimpleGUI as sg

'構建爬蟲'
#url 為google自動翻譯地址
url = 'http://translate.google.cn/m?q=%s&tl=%s&sl=%s'

'構建翻譯函數'
#text:需要翻譯的內容, to_language:目標語言類型, text_language:當前語言類型。
def translate(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'輸出內容:{data}')

    expr = r'(?s)class="(?:t0|result-container)">(.*?)<'
    result = re.findall(expr,data)
    print(f'{result}')
    if (len(result) == 0):
        return ""
    return  html.unescape(result[0])

'GUI搭建'
#設置主題
sg.theme('bluepurple')
#設置字體
font = ("fangsong",12)
#菜單欄設置
menu = [["Help",["About","Item","Author"]]]
#語言選擇(前端顯示),默認只有6種,可以自己添加
value = ['漢語','英語','日語','法語','俄語','自動']
# 語言選擇(后端執(zhí)行時)
var = ['zh','en','ja','fr','ru','auto']
# 語言字典配置
dic = dict(zip(value,var))
#GUI布局
layout = [[sg.Menu(menu,tearoff=False)],
         [sg.Text(text='輸入需要翻譯內容',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='翻譯結果',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))
           ]
          ]
# 設置窗口名稱,窗口布局,以及圖標
window = sg.Window("桌面翻譯器",layout,icon='CT.ico')

'邏輯語句執(zhí)行'
while True:
    #定義 事件 event, 返回值 values
    event,values = window.read()
    #點擊“X”或者“退出”按鈕時才退出
    if event in (None,"退出"):
        break
    #點擊 翻譯 按鈕
    if event == "翻譯":
        if values["to"] == '' or values["from"] =='':
            sg.Popup("請選擇語言后再重試")
        else:
            tar = translate(values["-IN-"],dic[values["to"]],dic[values["from"]])
            window["-OUT-"].Update(tar)
    #點擊 清除 按鈕
    if event =="清除":
        window["-IN-"].update("")
        window["-OUT-"].update("")
    if event == "About":
        #Popup 提示彈窗,給出提示信息
        sg.Popup("使用方法:",
                 "'翻譯'確認輸入,并輸出翻譯結果",
                 "'清除'清除已有輸入,清空翻譯的結果",
                 "'退出'取消,并退出App",
                 title='', font = font, auto_close = 1)
    if event == "Item":
        sg.Popup("翻譯類型:",
                 "'輸入類型' 輸入的語言類型",
                 "'輸出類型' 輸出的語言類型",
                 title = '', font = font, auto_close = 1)
    if event == "Author":
        sg.Popup("作者簡介:",
                 "姓名:XXXXXX",
                 "Wechat:XXXXXX",
                 "E-mail:XXXXXX@qq.com", title='', font=font, auto_close=1)
        window.close()

運行結果:

3、總結

看到這里,今天的分享差不多就要結束了。

關于PySimpleGUI 的介紹,也就差不多了。

今天更多的是通過PySimpleGUI 來搞定翻譯器,既鍛煉了擼碼能力,

有節(jié)省了每次百度翻譯/google翻譯花費的時間。

關于PySimpleGUI 更多功能,可以移步官網。

小魚就不過多的介紹了。

到此這篇關于基于Python3編寫一個GUI翻譯器的文章就介紹到這了,更多相關Python翻譯器內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • python實現一個簡單的貪吃蛇游戲附代碼

    python實現一個簡單的貪吃蛇游戲附代碼

    這篇文章主要介紹了python實現一個簡單的貪吃蛇游戲附代碼,文章圍繞主題展開詳細的內容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-06-06
  • python-numpy-指數分布實例詳解

    python-numpy-指數分布實例詳解

    今天小編就為大家分享一篇python-numpy-指數分布實例詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • Python實現指定區(qū)域桌面變化監(jiān)控并報警

    Python實現指定區(qū)域桌面變化監(jiān)控并報警

    在這篇博客中,我們將使用Python編程語言和一些常用的庫來實現一個簡單的區(qū)域監(jiān)控和變化報警系統(tǒng),文中有詳細的代碼示例供大家參考,需要的朋友可以參考下
    2023-07-07
  • Python計算斗牛游戲概率算法實例分析

    Python計算斗牛游戲概率算法實例分析

    這篇文章主要介紹了Python計算斗牛游戲概率算法,簡單介紹了斗牛游戲的原理并結合具體實例形式分析了相關的游戲概率算法,需要的朋友可以參考下
    2017-09-09
  • Numpy之random函數使用學習

    Numpy之random函數使用學習

    這篇文章主要介紹了Numpy之random使用學習,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-01-01
  • 解決pandas read_csv 讀取中文列標題文件報錯的問題

    解決pandas read_csv 讀取中文列標題文件報錯的問題

    今天小編就為大家分享一篇解決pandas read_csv 讀取中文列標題文件報錯的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-06-06
  • Python?configparser模塊的用法示例代碼

    Python?configparser模塊的用法示例代碼

    這篇文章主要介紹了Python?configparser模塊的用法,本文結合示例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-12-12
  • Python MySQLdb 使用utf-8 編碼插入中文數據問題

    Python MySQLdb 使用utf-8 編碼插入中文數據問題

    這篇文章主要介紹了Python MySQLdb 使用utf-8 編碼插入中文數據問題,需要的朋友可以參考下
    2018-03-03
  • python如何為list實現find方法

    python如何為list實現find方法

    這篇文章主要介紹了python如何為list實現find方法,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • Django 視圖層(view)的使用

    Django 視圖層(view)的使用

    這篇文章主要介紹了Django 視圖層(view)的使用,詳細的介紹了什么是視圖層以及案例,非常具有實用價值,需要的朋友可以參考下
    2018-11-11

最新評論

阳城县| 岐山县| 正蓝旗| 纳雍县| 林甸县| 大兴区| 微博| 邮箱| 峡江县| 肇东市| 马关县| 射阳县| 武威市| 雅江县| 九台市| 泰顺县| 铁力市| 永定县| 加查县| 铜山县| 桃源县| 武汉市| 通州市| 新昌县| 丰镇市| 山阳县| 运城市| 家居| 社旗县| 厦门市| 明溪县| 阳城县| 额敏县| 社旗县| 苗栗县| 壶关县| 曲水县| 明溪县| 靖西县| 庆城县| 洛宁县|