用requests tkinter實現小型翻譯器

2021-10-11 01:27:19 字數 2648 閱讀 9903

**如下:

# -*- coding: utf-8 -*-

import requests

from requests.exceptions import requestexception

import tkinter as tk

# 定義翻譯函式

deftranslate()

: str1 = text1.get(

)# 定義乙個變數,用來接收輸入文字框的值

data =

url =

""try:

r = requests.get(url, params=data)

if r.status_code ==

200:

result = r.json(

) translate_result = result[

'translateresult'][

0][0

]["tgt"

] text2.delete(

1.0,

"end"

)# 清空輸出文字框

text2.insert(

'end'

, translate_result)

# 將翻譯結果新增到輸出文字框中

except requestexception:

text2.insert(

'end'

,"發生錯誤"

)# 定義寫入文字txt的函式

defwrite()

:with

open

('./data/translate.txt'

,'w'

)as f1:

f1.write(text1.get()+

','+ text2.get(

0.0, tk.end)

)# 定義清空文字框的函式

defdelete()

: text1.delete(0,

"end"

)# 從第一行清除到最後一行

text2.delete(

1.0,

"end"

)window = tk.tk(

)# 建立window視窗

window.title(

"mini翻譯器"

)# 定義視窗名稱

text1 = tk.entry(window, width=

80, bg=

'whitesmoke'

)# 在窗體上新增乙個輸入文字框,並設定尺寸和顏色

text2 = tk.text(window, height=

18, bg=

'lightgrey'

)# 在窗體上新增乙個輸出文字框,並設定尺寸和顏色

text1.grid(row=

0, sticky=

"w", padx=1)

text2.grid(row=1)

# 新增乙個按鈕,用於觸發翻譯功能

t_button = tk.button(window, text=

'翻譯'

, relief=tk.raised, width=

8, height=

1, font=

'宋體'

, bg=

'red'

, fg=

'white'

, command=translate)

# 新增乙個按鈕,用於觸發清空輸入文字框

button1 = tk.button(window, text=

'儲存'

, font=

'宋體'

, relief=tk.raised, width=

8, height=

1, command=write)

# 新增乙個按鈕,用於觸發清空輸出文字框

button2 = tk.button(window, text=

'清空'

, font=

'宋體'

, relief=tk.raised, width=

8, height=

1, command=delete)

# 新增背景

image_file = tk.photoimage(

file

='aa.png'

)label = tk.label(window, image=image_file)

# 完成介面布局,設定各個控制項的位置

t_button.grid(row=

0, column=

1, padx=2)

button1.grid(row=

0, column=

2, padx=2)

button2.grid(row=

0, column=

3, padx=2)

label.grid(row=

1, column=

1, columnspan=3)

tk.mainloop(

)

執行結果如下

用Margin還是用Padding

用margin還是用padding 何時應當使用margin 需要在border外側新增空白時。空白處不需要背景 色 時。上下相連的兩個盒子之間的空白,需要相互抵消時。如15px 20px的margin,將得到20px的空白。何時應當時用padding 需要在border內測新增空白時。空白處需要背...

用Margin還是用Padding

用margin還是用padding這個問題是每個學習css高階時的必經之路。css邊距屬性定義元素周圍的空間。通過使用單獨的屬性,可以對上 右 下 左的外邊距進行設定。也可以使用簡寫的外邊距屬性同時改變所有的外邊距。w3school 邊界 margin 元素周圍生成額外的空白區。空白區 通常是指其他...

用yaml寫用例

第一步 安裝yaml,在執行裡輸入 pip install pyyaml 檢驗是否安裝成功,在pycharm裡輸入 import yaml 第二步 建立乙個file,字尾寫yaml或yml 在yml檔案裡寫入單個使用者名稱和密碼 開啟yml檔案並以字典的形式列印出來 執行結果 在yml檔案裡寫入多個...