Czytelnicy tacy jak ty pomagają wspierać MUO. Kiedy dokonujesz zakupu za pomocą linków na naszej stronie, możemy otrzymać prowizję partnerską. Czytaj więcej.

Średnia prędkość pisania wynosi około 40 słów na minutę. Jeśli chcesz być produktywny w swojej pracy, powinieneś dążyć do wpisania co najmniej 65 do 70 słów na minutę. Zwiększenie szybkości pisania poprawi wydajność, co przyspieszy zadania, takie jak wprowadzanie danych, pisanie tekstów, transkrypcja i role administracyjne.

Aby sprawdzić swoje umiejętności pisania na klawiaturze, możesz zbudować prostą aplikację do testowania pisania przy użyciu języka Python. Korzystając z tego, możesz uzyskać dokładne wyniki i rozwinąć uzależniający nawyk, który z czasem będzie się poprawiał.

Moduły Tkinter i Random

Aby opracować grę testową pisania, użyjesz tkinter moduł i losowy moduł. Tkinter umożliwia tworzenie aplikacji desktopowych. Oferuje różnorodne widżety, takie jak przyciski, etykiety, pola tekstowe i menedżery układu, które ułatwiają tworzenie aplikacji bez zbytniego wysiłku.

instagram viewer

Oprócz tego zawiera pomocne biblioteki, obiekty płótna i parsery HTML/XML/PDF. Aby zainstalować Tkintera w swoim systemie, otwórz terminal i wykonaj:

pypeć zainstalować tkinter

Moduł Random posiada zbiór funkcji do generowania liczb losowych. Możesz użyć tych procedur do tworzenia przetasowanych sekwencji, ruchów w grze i pseudolosowych liczb całkowitych. Niektóre z jego typowych zastosowań obejmują symulację rzutów kostką, tasowanie list, a generator losowych hasełoraz w grach typu krykiet ręczny i odgadywanie liczb.

Jak zbudować aplikację do testowania pisania przy użyciu Pythona

Wykonaj poniższe kroki, aby utworzyć aplikację do testowania pisania przy użyciu modułów Tkinter i Random w języku Python.

Możesz znaleźć kod źródłowy Typing Test App using Python i plik tekstowy Word w tym Repozytorium GitHub.

Rozpocznij od zaimportowania modułu Tkinter i Random. Zainicjuj instancję Tkinter i wyświetl okno główne. Ustaw wymiary w pikselach, tytuł i kolor tła okna.

z tkinter import *
import losowy
z tkinter import skrzynka pocztowa

Ekran główny = Tk()
Ekran główny.geometry(„1000x600”)
tytuł.ekranu głównego(„Wykorzystaj grę polegającą na pisaniu na klawiaturze”)
Ekran główny.config(bg="wodny")

Pobierz listę słów z repozytorium GitHub i umieść ją w tym samym folderze co skrypt Pythona, aby ułatwić korzystanie z niej. Przeczytaj zawartość pliku tekstowego i użyj funkcji split() do zapisania każdego słowa na liście. Zainicjuj zmienne wyniku, pominięcia i liczby 1 na zero, a zmienną czasu na 60.

plik1 = otwórz(„słowa.txt”, 'R')
słowa = plik1.odczyt().split()
wynik = brak = liczba1 = 0
czas = 60

Zdefiniuj funkcję o nazwie dany czas() który odwołuje się do wspomnianych powyżej zmiennych globalnych. Jeśli pozostały czas jest większy od zera, zmniejsz go o jeden i wyświetl na etykiecie licznika czasu (zadeklarowanej w dalszej części kodu). Użyj Po() do wywołania funkcji givetime() z opóźnieniem 1000 milisekund (jedna sekunda).

Jeśli czas się skończy, zmień treść etykiety startowej na Koniec gry i jednocześnie wyświetl wynik na etykiecie instrukcji gry. Przekaż odpowiednie zmienne do format() funkcję wyświetlania trafienia, chybienia i całkowitego wyniku.

pokdany czas():
światowy czas, wynik, chybiony

jeśli czas > 0:
czas -= 1
timercount.configure (tekst=czas)
licznik czasu.Po(1000, dany czas)
w przeciwnym razie:
etykieta startowa.configure (tekst='Koniec gry!')
instrukcja gry.configure (tekst='Trafienie = {} | Panna = {} | Łączny wynik = {}'.format (punktacja, brak, wynik - brak))

Przekaż tytuł i wiadomość do zapytaj anuluj() funkcjonować. Jeśli odpowiedź otrzymana w oknie dialogowym ma wartość prawda, zatrzymaj aplikację za pomocą Wyjście() funkcjonować.

 rr = skrzynka wiadomości.askokcancel('Koniec gry!', „Naciśnij OK, aby wyjść”)

Jeśli rr == PRAWDA:
Wyjście()

Zdefiniuj funkcję o nazwie gra() która przyjmuje zdarzenie jako argument wejściowy. Odwołaj się do zmiennych globalnych. Jeśli zmienna czasu jest równa 60, wykonaj funkcję Giventime(), aby rozpocząć odliczanie. Gdy gra jest w toku, zmień etykietę początkową na Kontynuuj i etykietę instrukcji gry, aby nacisnąć klawisz Enter po wpisaniu słowa za pomocą funkcji configure().

pokgra(wydarzenie):
światowy wynik, chybiony

jeśli czas == 60:
dany czas()

etykieta startowa.configure (tekst='Kontynuować..')
instrukcja gry.configure (tekst=„Wciśnij Enter po wpisaniu słowa”)

Pobierz słowo wpisane w wordentry za pomocą Dostawać() funkcję i sprawdź, czy odpowiada słowu wyświetlanemu na ekranie. Jeśli tak, zwiększ wynik i odzwierciedl go na etykiecie wyniku. W przeciwnym razie zwiększ pominiętą zmienną o jeden.

Zmień kolejność elementów na liście słów i wyświetl pierwszy element. Użyj usuwać() funkcję od zera do ostatniego indeksu na widżecie wordentry, aby wyczyścić zawartość.

Jeśli wordentry.get() == labelforward ['tekst']:
wynik += 1
scorelabelcount.configure (tekst=wynik)
w przeciwnym razie:
brak += 1

losowy.człapać(słowa)
labelforward.configure (tekst=słowa[0])
słownictwo.usuwać(0, KONIEC)

Ustaw etykietę początkową, etykietę do przodu, etykietę wyniku, liczbę etykiet wyników, etykietę dla timera, licznik czasu i instrukcję gry za pomocą widżetu Etykieta. Widżet etykiety pobiera okno nadrzędne, w którym chcesz go umieścić, tekst, który ma wyświetlać, typ czcionki, rozmiar, kolor i styl wraz z kolorem tła etykiety.

Przekaż współrzędne X i Y do miejsce() sposób organizowania etykiet w określonej pozycji.

startlabel = Etykieta (ekran główny, tekst =„Gra w pisanie”,czcionka=(„arialny”,30,„kursywa pogrubiona”),bg='czarny',fg='biały')
etykieta startowa.miejsce (x=375, y=50)

labelforward = Etykieta (ekran główny, tekst =' ',czcionka=(„arialny”,45,„kursywa pogrubiona”),fg='zielony')
labelforward.place (x=350, y=240)

scorelabel = Etykieta (ekran główny, tekst ='Twój wynik:',czcionka=(„arialny”,25,„kursywa pogrubiona”),fg='kasztanowaty')
etykieta.miejsce (x=110, y=100)

scorelabelcount = Etykieta (ekran główny, tekst=wynik, czcionka=(„arialny”,25,„kursywa pogrubiona”),fg='fioletowy')
punktacjaliczba.miejsce (x=250, y=180)

labelfortimer = Etykieta (ekran główny, tekst ='Pozostały czas:',czcionka=(„arialny”,25,„kursywa pogrubiona”),fg='kasztanowaty')
labelfortimer.miejsce (x=700, y=100)

timercount = Etykieta (ekran główny, tekst = czas, czcionka = („arialny”,25,„kursywa pogrubiona”),fg='fioletowy')
licznik czasu.miejsce (x=700, y=180)

instrukcja gry = etykieta (ekran główny, tekst =„Wciśnij Enter po wpisaniu słowa”,czcionka=(„arialny”,25,„kursywa pogrubiona”),fg='szary')
instrukcja gry.miejsce (x=250, y=500)

Zdefiniuj widżet wpisu, który akceptuje wpisywane słowo. Ustaw okno nadrzędne, w którym chcesz je umieścić, typ czcionki, rozmiar, styl wraz z rozmiarem obramowania i właściwość justify. Użyj metody place() do ustawienia widżetu wpisu i pliku focus_set() metoda aktywowania pola wprowadzania do wprowadzania.

wordentry = wpis (ekran główny, czcionka = („arialny”,25,„kursywa pogrubiona”), bd=10, uzasadnij ='Centrum')
wpis.miejsce (x=350, y=330)
słownictwo.focus_set()

Ważnym krokiem jest powiązanie klawisza Enter ze zdarzeniem w oknie Tkintera. Takie postępowanie zapewnia, że ​​gdy gracz naciska Wchodzić wykonywałaby się konkretna funkcja. Aby to osiągnąć, należy przekazać string i funkcja game() jako parametry do wiązać() funkcjonować. The główna pętla() mówi Pythonowi, aby uruchomił pętlę zdarzeń Tkinter i nasłuchiwał zdarzeń (takich jak naciśnięcia przycisków), dopóki nie zamkniesz okna.

ekran główny.bind('', gra)
główna pętla()

Połącz cały kod i uruchom kod, aby zagrać w grę testową na wyciągnięcie ręki.

Dane wyjściowe aplikacji do testowania pisania w języku Python

Po uruchomieniu powyższego programu pojawia się okno o szerokości 1000 pikseli i wysokości 600 pikseli, z turkusowym kolorem tła, tablicą wyników, minutnikiem i instrukcją rozpoczęcia gry.

Po naciśnięciu Enter gra się rozpoczyna i za każdą poprawną odpowiedź program zwiększa wynik o jeden.

Po upływie czasu program wyświetla końcowy wynik wraz z oknem dialogowym umożliwiającym wyjście z gry.

Pomysły Tkinter GUI dla początkujących

Tkinter to bardzo potężne narzędzie, którego można używać do tworzenia prostych lub w pełni funkcjonalnych aplikacji, które są atrakcyjne i solidne. Nawet nowicjusz może korzystać z Tkintera. Kilka przykładowych projektów, które możesz stworzyć, to quiz, książka adresowa, lista rzeczy do zrobienia lub przeglądarka obrazów.

Jeśli chcesz wyjść poza Tkintera, kilka popularnych alternatyw to Qt designer, Kivy, Toga i BeeWare. Wszystkie te frameworki są wszechstronne i obsługują programowanie na wielu platformach, dzięki czemu możesz bezproblemowo uruchamiać swoje aplikacje w dowolnym środowisku.