Vidutinis spausdinimo greitis yra apie 40 žodžių per minutę. Jei norite būti produktyvus savo darbe, turėtumėte stengtis įvesti bent 65–70 žodžių per minutę. Padidinus spausdinimo greitį, padidės jūsų efektyvumas, o tai padidins tokias užduotis kaip duomenų įvedimas, tekstų rašymas, transkripcija ir administravimo vaidmenys.
Norėdami patikrinti savo spausdinimo įgūdžius, galite sukurti paprastą spausdinimo testo programą naudodami Python. Naudodami tai galite gauti tikslių rezultatų ir išsiugdyti priklausomybę, kuri laikui bėgant tobulės.
Tkinter ir atsitiktiniai moduliai
Norėdami sukurti spausdinimo testo žaidimą, naudosite tkinteris modulis ir atsitiktinis modulis. „Tkinter“ leidžia kurti darbalaukio programas. Jame siūlomi įvairūs valdikliai, pvz., mygtukai, etiketės, teksto laukeliai ir išdėstymo tvarkyklės, kurios leidžia lengvai kurti programas be didelių pastangų.
Be šių, jame yra naudingos bibliotekos, drobės objektai ir HTML / XML / PDF analizatoriai. Norėdami įdiegti „Tkinter“ savo sistemoje, atidarykite terminalą ir vykdykite:
pip diegti tkinteris
Atsitiktinis modulis turi funkcijų rinkinį, skirtą atsitiktiniams skaičiams generuoti. Galite naudoti šias procedūras, kad sukurtumėte sumaišytas sekas, žaidimo judesius ir pseudoatsitiktinius sveikuosius skaičius. Kai kurie jo įprastiniai naudojimo būdai yra kauliukų metimo modeliavimas, sąrašų maišymas, a atsitiktinių slaptažodžių generatorius, ir tokiuose žaidimuose kaip rankinis kriketas ir skaičių spėjimas.
Kaip sukurti spausdinimo testo programą naudojant Python
Atlikite šiuos veiksmus, kad sukurtumėte spausdinimo testo programą naudodami Python Tkinter ir Random modulį.
Čia galite rasti programos Typing Test App naudojant Python šaltinio kodą ir žodžio tekstinį failą GitHub saugykla.
Pradėkite importuodami „Tkinter“ ir „Random“ modulį. Inicijuokite Tkinter egzempliorių ir parodykite šakninį langą. Nustatykite lango matmenis pikseliais, pavadinimą ir fono spalvą.
iš tkinteris importuoti *
importuoti atsitiktinis
iš tkinteris importuoti žinučių dėžutė
Pagrindinis ekranas = Tk()
Mainscreen.geometry("1000x600")
Mainscreen.title(„MakeUseOf spausdinimo žaidimas“)
Mainscreen.config(bg="vanduo")
Atsisiųskite žodžių sąrašą iš „GitHub“ saugyklos ir įdėkite jį į tą patį aplanką, kuriame yra „Python“ scenarijus, kad būtų lengviau pateikti nuorodas. Perskaitykite tekstinio failo turinį ir naudokite split() funkciją, kad įrašytumėte kiekvieną žodį į sąrašą. Inicijuokite balo, praleistų ir count1 kintamuosius iki nulio, o laiko kintamąjį iki 60.
failas1 = atidaryti („žodžiai.txt“, "r")
žodžiai = failas1.skaityti().split()
balas = praleistas = count1 = 0
laikas = 60
Apibrėžkite funkciją pavadintą duotas laikas() kuri nurodo pirmiau minėtus pasaulinius kintamuosius. Jei likęs laikas yra didesnis nei nulis, sumažinkite jį vienu ir parodykite laikmačio skaičiavimo etiketėje (nurodyta vėlesnėje kodo pusėje). Naudoti po () funkcija, skirta funkcijai giventime() atšaukti po 1000 milisekundžių (vienos sekundės) delsos.
Jei laikas baigėsi, pakeiskite pradžios etiketės turinį į Game Over ir tuo pačiu metu rodykite rezultatą žaidimo instrukcijos etiketėje. Perduokite atitinkamus kintamuosius į formatas () funkcija, kad būtų rodomas pataikymas, praleistas rezultatas ir bendras balas.
defduotas laikas():
globalus laikas, rezultatas, praleistas laikas
jei laikas > 0:
laikas - = 1
timercount.configure (text=time)
laikmačių skaičius.Po to(1000, duotas laikas)
Kitas:
startlabel.configure (text='Žaidimas baigtas!')
gameinstruction.configure (text='Pataikymas = {} | Panelė = {} | Bendras balas = {}'.formatas (rezultatas, praleistas, rezultatas – praleistas))
Perduokite pavadinimą ir pranešimą askokcancel () funkcija. Jei dialogo lange gauto atsakymo įvertinimas yra teisingas, sustabdykite programą naudodami išeiti () funkcija.
rr = messagebox.askokcancel('Žaidimas baigtas!', „Norėdami išeiti, paspauskite Gerai“)
jeigu rr == Tiesa:
išeiti()
Apibrėžkite funkciją pavadintą žaidimas () kuris priima įvykį kaip įvesties argumentą. Nurodykite pasaulinius kintamuosius. Jei laiko kintamasis lygus 60, vykdykite funkciją giventime(), kad pradėtumėte atgalinę atskaitą. Vykstant žaidimui, pakeiskite pradžios etiketę į Tęsti ir žaidimo instrukcijos etiketę, kad įvestumėte žodį naudodami configure() funkciją.
defžaidimas(įvykis):
globalus rezultatas, praleistasjei laikas == 60:
duotas laikas()
startlabel.configure (text='Tęsti..')
gameinstruction.configure (text=Įvedę žodį paspauskite Enter)
Išgryninkite žodį, įvestą žodžiu, naudodami gauti () funkciją ir patikrinkite, ar atitinka ekrane rodomą žodį. Jei taip, padidinkite balą ir pažymėkite jį balo etiketėje. Kitu atveju padidinkite praleistą kintamąjį vienu.
Pertvarkykite elementus žodžių sąraše ir parodykite pirmąjį elementą. Naudoti Ištrinti() funkcija nuo nulio iki paskutinės žodžių įrašo valdiklio rodyklės, kad išvalytumėte turinį.
jeigu wordentry.get() == labelforward['tekstas']:
rezultatas += 1
scorelabelcount.configure (text=score)
Kitas:
praleistas += 1
atsitiktinis.maišyti(žodžius)
labelforward.configure (text=words[0])
žodynas.Ištrinti(0, GALAS)
Nustatykite startlabel, labelforward, scorelabel, scorelabelcount, labelfortimer, timercount ir žaidimo nurodymus naudodami valdiklį Label. Etiketės valdiklis paima pirminį langą, kuriame norite jį įdėti, tekstą, kurį jis turi rodyti, šrifto tipą, dydį, spalvą ir stilių bei etiketės fono spalvą.
Perduokite X ir Y koordinates į vieta () būdas sutvarkyti etiketes konkrečioje vietoje.
startlabel = Etiketė (pagrindinis ekranas, tekstas="Rašymo žaidimas",šriftas=("aralas",30,"kursyvas paryškintas"),bg='juoda',fg='balta')
startlabel.place (x = 375, y = 50)labelforward = Etiketė (pagrindinis ekranas, tekstas=' ',šriftas=("aralas",45,"kursyvas paryškintas"),fg='žalias')
labelforward.place (x = 350, y = 240)scorelabel = etiketė (pagrindinis ekranas, tekstas ='Tavo Taškai:',šriftas=("aralas",25,"kursyvas paryškintas"),fg="kaštoninė")
scorelabel.place (x = 110, y = 100)scorelabelcount = Etiketė (pagrindinis ekranas, tekstas=balas, šriftas=("aralas",25,"kursyvas paryškintas"),fg='violetinė')
scorelabelcount.place (x = 250, y = 180)labelfortimer = Etiketė (pagrindinis ekranas, tekstas='Likęs laikas:',šriftas=("aralas",25,"kursyvas paryškintas"),fg="kaštoninė")
etiketėfortimer.vieta (x = 700, y = 100)timercount = etiketė (pagrindinis ekranas, tekstas = laikas, šriftas = ("aralas",25,"kursyvas paryškintas"),fg='violetinė')
timercount.place (x = 700, y = 180)
gameinstruction = Etiketė (pagrindinis ekranas, tekstas =Įvedę žodį paspauskite Enter,šriftas=("aralas",25,"kursyvas paryškintas"),fg='pilka')
gameinstruction.place (x = 250, y = 500)
Apibrėžkite įrašo valdiklį, kuris priima įvestą žodį. Nustatykite pagrindinį langą, kuriame norite jį įdėti, šrifto tipą, dydį, stilių, kraštinės dydį ir išlyginimo ypatybę. Naudokite place() metodą, kad nustatytumėte įrašo valdiklį ir focus_set() būdas aktyvuoti įvesties įvesties laukelį.
wordentry = Įrašas (pagrindinis ekranas, šriftas=("aralas",25,"kursyvas paryškintas"), bd=10, pateisinti ='centras')
wordentry.place (x = 350, y = 330)
žodynas.focus_set()
Svarbus žingsnis yra susieti klavišą Enter su įvykiu Tkinter lange. Taip užtikrinama, kad kai žaidėjas paspaudžia Įeikite būtų vykdoma tam tikra funkcija. Norėdami tai pasiekti, turite išlaikyti
Mainscreen.bind('' , žaidimas)
mainloop ()
Sudėkite visą kodą ir paleiskite kodą, kad galėtumėte žaisti spausdinimo bandomąjį žaidimą po ranka.
Python spausdinimo testo programos išvestis
Paleidus aukščiau pateiktą programą, pasirodo 1000 pikselių pločio ir 600 pikselių aukščio langas su vandens fono spalva, rezultatų suvestinė, atgalinės atskaitos laikmatis ir nurodymas pradėti žaidimą.
Paspaudus Enter, žaidimas prasideda ir kiekvieną teisingą atsakymą programa padidina balą vienu.
Pasibaigus laikui, programa parodo galutinį rezultatą ir dialogo langą, kad išeitumėte iš žaidimo.
Tkinter GUI idėjos pradedantiesiems
„Tkinter“ yra labai galingas įrankis, kurį galite naudoti kurdami paprastas ir visiškai veikiančias patrauklias ir patikimas programas. Net naujokas gali naudoti „Tkinter“. Keletas projektų pavyzdžių, kuriuos galite sukurti, yra viktorinos žaidimas, adresų knyga, darbų sąrašas arba vaizdų peržiūros priemonė.
Jei norite pereiti už „Tkinter“, keletas populiarių alternatyvų yra „Qt designer“, „Kivy“, „Toga“ ir „BeeWare“. Visos šios sistemos yra universalios ir palaiko kelių platformų kūrimą, todėl galite be vargo paleisti programas bet kurioje aplinkoje.