伊人99re_av日韩成人_91高潮精品免费porn_色狠狠色婷婷丁香五月_免费看的av_91亚色网站

中培偉業IT資訊頻道
您現在的位置:首頁 > IT資訊 > 軟件研發 > 如何使用Python制作自己的打字導師應用程序?

如何使用Python制作自己的打字導師應用程序?

2020-09-07 18:06:47 | 來源:中培企業IT培訓網

當普通人想要學習打字時,他們會使用諸如Typing master之類的軟件 。但是程序員們可以使用他們的知識來編寫自己的打字導師應用。一如既往,Python將會是最好的選擇,因為它易于理解,并為我們的特定目的提供了很多庫。下面讓我們來看一下程序員如何使用Python制作自己的打字導師應用程序吧。為了檢查打字速度和準確性,我們需要記錄擊鍵。為此,我們將使用一個稱為tkinter的python庫。由于tkinter已從Python 3.4及更高版本內置,因此您無需使用pip進行安裝。

  這個應用程式如何運作?

首先,我們將獲取許多英文字母的數據集。然后,我們將從該數據集中向用戶隨機呈現單詞。用戶必須輸入這些單詞。如果他成功鍵入一個單詞,他將得到下一個單詞。同樣,用戶將獲得特定的生命。一旦用戶輸入錯誤的字母,他將失去生命。如果他的生活結束了,比賽就結束了。而且,基于用戶鍵入特定單詞所花費的時間以及正確鍵入的字母數來計算分數。

在此項目中使用的英語單詞數據集可以在這里找到 。下載此文件并將其存儲在存在python文件的相同位置。該文件包含大約10,000個英語單詞。我們將從列表中隨機選擇給定數量的單詞。對于分數計算,每當用戶正確按下一個字母時,我們就將分數加1。還為每個單詞分配了時間限制,該時間限制是單詞長度的倍數。如果用戶在時間限制之前輸入單詞,則剩余時間將添加到得分中。

代碼展示:

import tkinter as tk

import random

from os import system, name

import time

def clear():

if name == 'nt':

_ = system('cls')

else:

_ = system('clear')

index = 0

list_index = 0

list = []

word_count = 10

f = open('words.txt', 'r')

for line in f:

list.append(line.strip())

random.shuffle(list)

list = list[:word_count]

print("---WELCOME TO TYPING TUTOR---")

time.sleep(1)

clear()

print("Total words: ", len(list))

time.sleep(2)

clear()

print("Word "+str(list_index+1)+" out of "+str(word_count)+": "+list[list_index])

start_time = time.time()

end_time = 0

time_multiplier = 2

lives = 3

score = 0

def keypress(event):

global index

global list_index

global list

global lives

global score

global start_time

global end_time

global time_multiplier

word = list[list_index]

if event.char == word[index]:

index = index + 1

score = score + 1

else:

clear()

print("Word " + str(list_index + 1) + " out of " + str(word_count) + ": " + list[list_index])

print("wrong letter!")

lives = lives - 1

print("Lives left: ", lives)

if lives == 0:

print("Game Over!")

print("Final Score: ", score)

root.destroy()

return

if index == len(word):

clear()

print("right!")

index = 0

list_index = list_index + 1

end_time = time.time()

time_taken = int(end_time - start_time)

time_left = time_multiplier * len(word) - time_taken

score = score + time_left

print("time taken: " + str(time_taken) + " out of " + str(time_multiplier*len(word)) + " seconds.")

print("Current score: ", score)

time.sleep(1.5)

start_time = end_time

clear()

if list_index < len(list) and index == 0:

print("Word " + str(list_index + 1) + " out of " + str(word_count) + ": " + list[list_index])

elif list_index == len(list):

clear()

print("Congratulations! you have beaten the game!")

print("Final Score: ", score)

root.destroy()

root = tk.Tk()

root.bind_all('', keypress)

root.withdraw()

root.mainloop()

這段代碼復制到一個新的Python文件并將它命名為 app.py。可以使用以下命令設置游戲中顯示的單詞總數 word_count 變量。當前設置為100。 time_multiplier 變量控制分配給每個單詞的時間。當前設置為2。這意味著對于長度為5的單詞,時間限制為5 * 2 = 10秒。lives 變量定義玩家的生命數量。每當玩家錯誤地鍵入字母時,生命都會過去。

要運行此代碼,請打開命令提示符,將目錄更改為該python文件的存儲位置,然后鍵入: python app.py

請注意,運行此代碼后,命令提示符將不會保留為活動窗口。您不必擔心。只需開始輸入顯示的單詞的字母即可。當您繼續正確輸入時,樂譜將更新,接下來的單詞將繼續出現。另外,您實際上不會在屏幕上的任何地方看到要鍵入的單詞。您只需要繼續按正確的鍵即可。每當您按下任何不正確的鍵時,都會扣除生命。

通過上述介紹,如何使用Python制作自己的打字導師應用程序相信大家也已經知曉了吧,想了解更多關于Python的信息,請繼續關注中培偉業。

主站蜘蛛池模板: 精品国精品国产自在久国产应用 | 毛片网子 | 亚洲成年人网站在线观看 | 亚洲精品久久无码日韩绯色 | 一本一本久久aa精品综合 | 免费国产无遮挡又黄又爽 | 日韩日本欧美亚洲 | 人人爽久久涩噜噜噜蜜桃 | 精品亚洲成a人无码成a在线观看 | 色婷婷一区二区三区亚洲国产精品 | 欧美14一16sex性处 | 男女啪啪高清无遮挡免费 | 不卡一区二区在线观看 | 15—16女人毛片 | 国产精品午夜福利片不卡 | 青青草国产精品欧美成人 | 日本一区二区不卡在线 | 韩国视频一区二区 | 国产精品久久久久久久久久影院的 | 男女作爱全部免费观爱 | 婷婷色婷婷开心五月四房播播 | 亚洲欧美激情国产综合久久久 | 好硬好湿好大再深一点动态图 | 色情无码WWW视频无码区 | 伊波拉病毒在线观看 | 91精品老司机久久一区啪 | 亚洲午夜无码毛片AV久久京东热 | 男人女人午夜视频免费 | 国产激情高中生呻吟视频 | 一本色道久久综合无码人妻 | 最近中文字幕完整在线看一 | 久久久网站视频 | 日本一区二区三区视频在线观看 | 亚洲欧美日韩一区二区 | 天天舔日日干 | 97午夜影院| 老司机67194精品线观看 | 亚洲中文字幕美腿 | 无码AV中文一二三区 | 麻豆传媒免费在线观看 | 日本在线一区二区三区 |