真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

如何使用Python制作一個打字訓(xùn)練小工具-創(chuàng)新互聯(lián)

這篇文章將為大家詳細(xì)講解有關(guān)如何使用Python制作一個打字訓(xùn)練小工具,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

成都創(chuàng)新互聯(lián)主要從事網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計、網(wǎng)頁設(shè)計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)峨山縣,10余年網(wǎng)站建設(shè)經(jīng)驗,價格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):18980820575python是什么意思

Python是一種跨平臺的、具有解釋性、編譯性、互動性和面向?qū)ο蟮哪_本語言,其最初的設(shè)計是用于編寫自動化腳本,隨著版本的不斷更新和新功能的添加,常用于用于開發(fā)獨立的項目和大型項目。

一、寫在前面

  說道程序員,你會想到什么呢?有人認(rèn)為程序員象征著高薪,有人認(rèn)為程序員都是死肥宅,還有人想到的則是996和 ICU。

  如何使用Python制作一個打字訓(xùn)練小工具

  別人眼中的程序員:飛快的敲擊鍵盤、酷炫的切換屏幕、各種看不懂的字符代碼。

  然而現(xiàn)實中的程序員呢?對于很多程序員來說,沒有百度和 Google 解決不了的問題,也沒有 ctrl + c 和 ctrl + v 實現(xiàn)不了的功能。

  那么身為一個程序員,要怎么讓自己看起來更加“專業(yè)”呢?答案就是加快自己的打字速度了,敲的代碼可能是錯的,但這個13卻是必須裝的!

  然而還是有不少人打字不那么快的,可能就需要訓(xùn)練下了,但是既然身為程序員,為何不自己寫一個訓(xùn)練打字的小工具出來呢?

二、基本思路

  使用 PyQT5 開發(fā) GUI,實現(xiàn)顯示句子并讓用戶輸入,然后將輸入的內(nèi)容和給出的句子進行比對,同時記錄所用的時間,最后將正確率輸出來。為了能夠持續(xù)打字輸入,還需要做一個“下一句”的功能。在實現(xiàn)了這兩個基本的功能后,一個簡單的打字訓(xùn)練小工具就做出來了。

三、界面設(shè)計

1.環(huán)境配置

  PyQT5 的開發(fā)環(huán)境配置在上一篇博客中已經(jīng)說過了,因而這里不再贅述,如果不清楚的可以點這里查看。

2.界面設(shè)計

  要進行界面設(shè)計,得先打開 QtDesigner,然后新建項目,選擇 Widget:

  如何使用Python制作一個打字訓(xùn)練小工具

  然后就往里面拖控件就好了,這還是很方便的,主要用的控件包括 Label、Text Edit、Push Button等,雙擊控件之后可以在右側(cè)修改控件的各種屬性。最終設(shè)計出的界面如下:

  如何使用Python制作一個打字訓(xùn)練小工具

3.生成 Python 代碼

  在設(shè)計完界面之后,將生成的結(jié)果保存下來,會得到一個 .ui 為后綴的文件。這個文件我們還是無法直接使用的,需要轉(zhuǎn)變成 Python 代碼才行。此時就需要使用 pyuic5 命令了,不懂的可以點這里查看我的上篇博客。

四、槽函數(shù)

1.槽函數(shù)簡介

  要進行功能設(shè)計,就得先知道槽函數(shù)。槽是普通的 C++ 成員函數(shù),槽在 Qt 開發(fā)軟件中是一個很重要的概念,在 Qt 里與信號連接的就是槽,我們一般稱之為槽函數(shù)。

  在使用信號的時候,有四個參數(shù):

  1)sender:發(fā)出信號的對象;

  2)signal:發(fā)送對象發(fā)出的信號;

  3)receiver:接收信號的對象;

  4)slot:接收對象在接收到信號之后所需要調(diào)用的函數(shù)(槽函數(shù))。

2.使用方法

(1)第一種方法

  第一步,在 QtDesigner 中點擊 “Edit Signals/Slots”,然后左鍵點擊按鈕后將鼠標(biāo)拖到另一個 Label 上:

  如何使用Python制作一個打字訓(xùn)練小工具

  第二步,在彈出的設(shè)置框中選擇具體的方法及功能。

  如何使用Python制作一個打字訓(xùn)練小工具

  這樣做很簡單,但是也有缺陷,問題在于不能自定義方法,只能使用給定的方法。

(2)第二種方法

  在右下角找到 “Signal/Slot Editor” 并點擊,然后就可以點擊 “+” 創(chuàng)建信號了。

  如何使用Python制作一個打字訓(xùn)練小工具

  這種方法能夠讓我們自定義了,但是也不算方便,尤其是當(dāng)你不知道具體要實現(xiàn)什么方法的時候。

(3)第三種方法

  使用 connect() 方法,傳入的參數(shù)為一個方法名稱。例如:

btn.clicked.connect(func)

五、功能實現(xiàn)

1.繼承函數(shù)

  使用 pyuic5 生成 py 文件中定義了一個 Ui_Form 類,其中包含了對各種控件的定義等,如果我們要增加其他功能,且直接在這個 py 文件中修改的話,那么之后要更新界面之類的就不會不方便了,所以最好的方法是繼承 Ui_Form 類,然后在繼承類中添加修改。參考代碼如下:

import sys
 from PyQt5 import QtWidgets
 from typing.ui import Ui_Form
 class MyForm(Ui_Form, QtWidgets.QWidget):
   def __init__(self):
     super(MyForm, self).__init__()
     self.setupUi(self)
 if __name__ == '__main__':
   app = QtWidgets.QApplication(sys.argv)
   my_form = MyForm()
   my_form.show()
   sys.exit(app.exec_())

2.隱藏顯示控件

  有時候我們可能會需要將某些控件隱藏起來,這里簡單介紹幾種方法。

  1)setHidden(bool) 設(shè)置控件是否隱藏;

  2)hide() 隱藏控件;

  這兩種隱藏的方法會完全隱藏控件,即不保留控件所占的位置。但如果要保留位置的話,可以使用下面這種方法:

def click(self):
   """
   點擊按鈕時調(diào)用
   :return: 
   """
   self.get_time()
   the_input = self.textEdit.toPlainText()
   # 計算準(zhǔn)確率
   count = 0
   for i in range(len(the_input)):
     if the_input[i] == self.text[i]:
       count += 1
   accuracy = count / len(self.text) * 100
   # print(accuracy)
   self.show_label()
   # 設(shè)置提示信息
   info = "有點可惜,你的正確率是: %.2f%% " % accuracy if accuracy != 100 else "恭喜你全對了呢!繼續(xù)加油哦!"
   self.info_lable.setText(info)

3.判斷輸入內(nèi)容

  這一功能的實現(xiàn)需要在點擊“提交”按鈕時獲取輸入框中的內(nèi)容,再和給出的文本進行對比,最后將結(jié)果返回顯示出來。

復(fù)制代碼 代碼如下:

1 def click(self): 2 """ 3 點擊按鈕時調(diào)用 4 :return: 5 """ 6 self.get_time() 7 the_input = self.textEdit.toPlainText() 8 # 計算準(zhǔn)確率 9 count = 010 for i in range(len(the_input)):11 if the_input[i] == self.text[i]:12 count += 113 accuracy = count / len(self.text) * 10014 # print(accuracy)15 self.show_label()16 # 設(shè)置提示信息17 info = "有點可惜,你的正確率是: %.2f%% " % accuracy if accuracy != 100 else "恭喜你全對了呢!繼續(xù)加油哦!"18 self.info_lable.setText(info)

  對于我這種懶人來說,點擊按鈕這種操作都是費力的,所以最好加入一個快捷鍵,這樣就方便多了,可以使用如下方法設(shè)置:

# 設(shè)置快捷鍵
self.submit_btn.setShortcut('ctrl+e')

六、運行結(jié)果

  最終運行結(jié)果的截圖如下:

  如何使用Python制作一個打字訓(xùn)練小工具

  提交之后還可以點擊下一句繼續(xù)訓(xùn)練:

  如何使用Python制作一個打字訓(xùn)練小工具

關(guān)于“如何使用Python制作一個打字訓(xùn)練小工具”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,使各位可以學(xué)到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。


網(wǎng)頁題目:如何使用Python制作一個打字訓(xùn)練小工具-創(chuàng)新互聯(lián)
當(dāng)前網(wǎng)址:http://weahome.cn/article/jhjjo.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部