Ovaj koristan alat može vam pomoći da radite produktivnije, a možete ga sami izraditi koristeći Tkinter.
Pomodoro tehnika je tehnika upravljanja vremenom koju je razvio Francesco Cirillo. Uključuje korištenje mjerača vremena za rastavljanje posla u intervale od 25 minuta odvojene pauzom od pet minuta. Nakon što završite ovaj ciklus četiri puta, možete napraviti dužu pauzu od 20 minuta.
Pomodoro tehnika povećava produktivnost, uklanja distrakcije i povećava fokus pojedinca na posao. Ova tehnika vas oslobađa multitaskinga i nagrađuje vas pauzama kao nagradom. To vam pomaže da ostanete opušteni i motivirani da nastavite predano raditi.
Tkinter i matematički modul
Za izradu aplikacije Pomodoro Timer potreban vam je Tkinter i modul Math. Tkinter je standardna GUI biblioteka za Python. Nudi razne widgete kao što su gumbi, oznake i tekstualni okviri, tako da možete razvijati aplikacije u tren oka. Da biste instalirali Tkinter, otvorite terminal i izvršite:
pip instaliraj tkinter
Matematički modul dolazi u standardnoj Python biblioteci i
vrlo je koristan u izvođenju matematičkih izračuna. Dolazi s aritmetičkim, trigonometrijskim, eksponencijalnim, logaritamskim funkcijama, funkcijama korisnosti i konstantama kao što su pi i e.Kako napraviti aplikaciju Pomodoro Timer koristeći Python
Ovdje možete pronaći izvorni kod aplikacije Pomodoro Timer koja koristi Python GitHub spremište.
Započnite s uvozom Tkinter i Math modula. Inicijalizirajte Pomodoro varijable vrijeme učinkovitosti rada, vrijeme pauze, vrijeme duge pauze, brojač i tajmer. Upotrijebit ćete varijablu brojača, ponavljanja, kako biste saznali broj Pomodoro ciklusa koje je mjerač vremena završio.
iz tkinter uvoz *
uvoz matematika
WORK_MIN = 25
SHORT_BREAK_MIN = 5
LONG_BREAK_MIN = 20
ponavljanja = 0
mjerač vremena = Nijedan
Definirajte funkciju, reset_timer(). Započnite postavljanjem Početak stanje gumba u normalno da bi se omogućilo; kasnije ćete vidjeti gdje to onemogućiti.
Pozovite metodu after_cancel() da zaustavite funkciju mjerača vremena. Koristiti item_config() metodu na platnu za vraćanje mjerača vremena prikazanog na zaslonu na nulu. Promijenite tekst naslova u "Timer" i obojite ga ljubičasto. Poništite sve prisutne kvačice postavljanjem teksta na prazan niz.
Referirajte globalnu varijablu ponavljanja i vratite je na nulu.
defreset_timer():
gumb za pokretanje ["država"] = "normalan"
root.after_cancel (timer)
canvas.itemconfig (timer_text, text="00:00")
title_label.config (tekst="Timer", fg=#A020F0')
check_marks.config (tekst="")
globalno ponavljanja
ponavljanja = 0
Definirajte funkciju start_timer(). Ovdje ćete onemogućiti Početak kako biste spriječili korisnika da ga ponovno klikne.
Nastavite upućivanjem na globalno ponavljanja varijablu i povećavajući je. Dobijte broj sekundi za obavljanje svog posla, kratku pauzu i dugu pauzu. Ako varijabla brojača ne ostavlja ostatak kada se podijeli s osam (četiri Pomodoro ciklusa gdje je jedan ciklus sastoji se od rada i kratke pauze), pokrenite mjerač vremena duge pauze i prikažite ga na zaslonu u plavoj boji boja.
Slično, ako je ostatak nula kada se podijeli s dva, započnite i prikažite mjerač vremena kratke pauze u zelenoj boji. U suprotnom, pokrenite radni mjerač vremena i prikažite isti u crvenoj boji.
defstart_timer():
gumb za pokretanje ["država"] = "onemogućeno"
Definirajte funkciju, odbrojavanje() koji prihvaća brojanje. Postavite varijablu minimalnog broja kao najbliži mali cijeli broj broju podijeljenom sa 60. Postavite drugi broj kao modul brojanja za 60. Ako su sekunde manje od 10, prikažite dodatnu nulu ispred njih. Postavite platno na prikaz trenutne minute i vremena kako je gore izračunato.
Ako je brojač veći od nule, uputite na globalni mjerač vremena i postavite ga zamolite da pozove samu funkciju count_down nakon odgode od jedne sekunde i smanjite brojač za jedan.
defodbrojavanje(računati):
count_min = math.floor (count / 60)
count_sec = count % 60ako broj_sek < 10:
broj_sek = f"0{count_sec}"canvas.itemconfig (timer_text, text=f"{count_min}:{count_sec}")
ako brojati > 0:
globalno mjerač vremena
timer = root.after(1000, odbrojavanje, odbrojavanje - 1)
U suprotnom, nazovite start_timer() funkciju, postavite oznake na nulu i izračunajte radne sesije kao najmanji najbliži cijeli broj brojaču podijeljen s dva. Ponavljajte radne sesije i odgovarajuće povećajte oznake. Konfigurirajte kvačice() funkcija za prikaz teksta kao varijable kvačice.
drugo:
start_timer()
oznake = ""
work_sessions = math.floor (reps / 2)za _ u raspon (radne_sesije):
označava += "✓"
check_marks.config (tekst=oznake)
Inicijalizirajte Tkinter instancu i prikažite korijenski prozor. Postavite naslov svoje aplikacije i konfigurirajte je da ima ispunu u oba smjera. Postavite pozadinu na svijetlo žutu.
korijen = Tk()
root.title("Pomodoro mjerač vremena")
root.config (padx=100, pady=50, bg="#f7f5dd")
Definirajte widget oznake koji prikazuje tekst kao Timer. Postavite boju fonta, boju pozadine i stilove fonta. Koristite Grid layout manager za organiziranje elemenata aplikacije. Postavite oznaku naslova u prvi red i drugi stupac.
title_label = Oznaka (tekst="Timer", fg='#A020F0', bg="#f7f5dd", font=("Arial", 50))
title_label.grid (stupac=1, red=0)
Definirajte platno širine i visine 200x224 piksela. Postavite debljinu ruba na nulu. Upotrijebite widget PhotoImage za prikaz slike rajčice na platnu. Koristiti stvoriti_sliku() način umetanja slike na platno.
Koristiti stvoriti_tekst() metoda za stvaranje teksta vremena mm: ss format. Postavite širinu, visinu, tekst, boju i stilove fonta vremena odbrojavanja. Postavite ovo u drugi redak i drugi stupac mreže.
platno = Platno (širina=200, visina=224, debljina isticanja=0)
tomato_img = FotoSlika (datoteka="rajčica.png")
canvas.create_image(100, 112, slika=rajčica_img)
timer_text = canvas.create_text(100, 130, tekst="00:00", ispuni="bijelo", font=("Arial", 35, "podebljano"))
platno.mreža (stupac=1, red=1)
Definirajte dva gumba, start_gumb, i reset_gumb. Postavite tekst koji bi trebao prikazati, bez okvira, funkciju koju bi trebao izvršiti kada se klikne, boju pozadine i stilove fonta. Postavite gumb Start u prvi stupac, drugi red i gumb Reset u isti stupac, treći red.
start_button = Gumb (tekst="Početak", debljina isticanja=0, naredba=start_timer, bg="#e7305b", font=("arial", 15, "podebljano"))
start_button.grid (stupac=0, red=2)
reset_button = Gumb (tekst="Poništi", debljina isticanja=0, naredba = reset_timer, bg="#e7305b", font=("arial", 15, "podebljano"))
reset_button.grid (stupac=2, red=2)
Napravite oznaku koja u početku prikazuje kvačice kao da ih nema. Postavite boju fonta, boju pozadine i stilove fonta. Postavite ga u drugi stupac i četvrti red, ispod gumba u sredini.
The glavna petlja() funkcija govori Pythonu da pokrene Tkinter petlju događaja i osluškuje događaje dok ne zatvorite prozor.
check_marks = Oznaka (tekst="", fg='#00FF00', bg="#f7f5dd", font=("arial", 25, "podebljano"))
check_marks.grid (stupac=1, red=3)
root.mainloop()
Sastavite sav kod i isprobajte aplikaciju Pomodoro Timer.
Primjer izlaza aplikacije Pomodoro Timer
Kada pokrenete ovaj program, vidjet ćete prozor s naslovom "Timer" i mjerač vremena postavljen na nulu. Klikom na gumb Start naslov se mijenja u "Rad", a mjerač vremena počinje odbrojavati.
Nakon točno 25 minuta pojavljuje se kvačica i aplikacija pokreće tajmer kratke stanke od pet minuta.
Nakon četiri Pomodoro ciklusa, mjerač vremena duge stanke postavlja se na mjesto na 20 minuta. Kada vrijeme istekne, radni mjerač vremena počinje ponovno.
Aplikacije koje možete izraditi koristeći Math i Tkinter modul
Postoji mnoštvo aplikacija koje možete izraditi koristeći Tkinter i modul Math. Početnici mogu istražiti platformu izgradnjom kalkulatora. Kalkulator može biti različitih vrsta, uključujući aritmetički, geometrijski, grafički i financijski. Možete izraditi matematičke kartice i generatore matematičkih problema koje korisnik može riješiti.
Alat za pretvaranje brojčanih sustava, trigonometriju i statistiku može se pokazati korisnim za vježbanje matematike na jednostavniji i zabavniji način.