To uporabno orodje vam lahko pomaga pri bolj produktivnem delu in ga lahko zgradite sami s pomočjo Tkinterja.

Tehnika Pomodoro je tehnika upravljanja s časom, ki jo je razvil Francesco Cirillo. Vključuje uporabo časovnika za razdelitev dela na 25-minutne intervale, ločene s petminutnim odmorom. Ko štirikrat zaključite ta cikel, si lahko vzamete daljši 20-minutni odmor.

Pomodoro tehnika poveča produktivnost, odpravi motnje in poveča posameznikovo osredotočenost na delo. Ta tehnika se znebi večopravilnosti in vas za nagrado nagradi z odmori. To vam pomaga ostati sproščeni in motivirani za predano nadaljevanje dela.

Tkinter in matematični modul

Za izdelavo aplikacije Pomodoro Timer potrebujete Tkinter in modul Math. Tkinter je standardna knjižnica GUI za Python. Ponuja različne pripomočke, kot so gumbi, oznake in besedilna polja, tako da lahko aplikacije razvijete v hipu. Če želite namestiti Tkinter, odprite terminal in izvedite:

pip namestite tkinter

Modul Math je na voljo v standardni knjižnici Python in

instagram viewer
je zelo uporaben pri izvajanju matematičnih izračunov. Na voljo je z aritmetičnimi, trigonometričnimi, eksponentnimi, logaritemskimi funkcijami, funkcijami uporabnosti in konstantami, kot sta pi in e.

Kako zgraditi aplikacijo Pomodoro Timer z uporabo Pythona

Tukaj lahko najdete izvorno kodo aplikacije Pomodoro Timer, ki uporablja Python Repozitorij GitHub.

Začnite z uvozom modula Tkinter in Math. Inicializirajte spremenljivke časa delovne učinkovitosti Pomodoro, časa odmora, dolgega časa odmora, števca in časovnika. Uporabili boste spremenljivko števca, ponovitev, da ugotovite število ciklov Pomodoro, ki jih je opravil časovnik.

od tkinter uvoz *
uvoz matematika

WORK_MIN = 25
SHORT_BREAK_MIN = 5
LONG_BREAK_MIN = 20
ponovitev = 0
časovnik = Noben

Definirajte funkcijo, reset_timer(). Začnite z nastavitvijo Začetek stanje gumba na normalno, da ga omogočite; pozneje boste videli, kje ga onemogočiti.

Prikličite metodo after_cancel(), da zaustavite funkcijo časovnika. Uporabi item_config() metodo na platnu za ponastavitev časovnika, prikazanega na zaslonu, na nič. Besedilo naslova spremenite v "Časovnik" in ga obarvajte vijolično. Počistite vse prisotne kljukice tako, da besedilo nastavite na prazen niz.

Sklicujte se na globalno spremenljivko ponovitev in jo ponastavite na nič.

defreset_timer():
začetni_gumb ["država"] = "normalno"
root.after_cancel (časovnik)
canvas.itemconfig (timer_text, text="00:00")
title_label.config (besedilo="Časovnik", fg=#A020F0')
check_marks.config (besedilo="")
globalno ponovitev
ponovitev = 0

Definirajte funkcijo start_timer(). Tukaj boste onemogočili Začetek da uporabniku preprečite, da bi ga ponovno kliknil.

Nadaljujte s sklicevanjem na globalno ponovitev spremenljivko in jo povečati. Pridobite število sekund za opravljanje svojega dela, kratek odmor in dolg odmor. Če spremenljivka števca pri deljenju z osem ne pusti ostanka (štirje cikli Pomodoro, kjer je en cikel sestoji iz dela in kratkega odmora), zaženite časovnik dolgega odmora in ga prikažite na zaslonu v modri barvi barva.

Podobno, če je ostanek enak nič, ko ga delimo z dva, začnite in prikažite časovnik kratkega premora v zeleni barvi. V nasprotnem primeru zaženite delovni časovnik in ga prikažite v rdeči barvi.

defstart_timer():
začetni_gumb ["država"] = "onemogočeno"

Definirajte funkcijo, count_down() ki sprejema štetje. Spremenljivko najmanjšega števila nastavite kot najbližje majhno celo število številu, deljeno s 60. Drugo štetje nastavite kot modul štetja za 60. Če so sekunde manjše od 10, prikažite dodatno ničlo pred njimi. Na zaslonu nastavite trenutno minuto in čas, kot je izračunano zgoraj.

Če je štetje večje od nič, se sklicujte na globalni časovnik in nastavite, naj po zakasnitvi ene sekunde pokliče samo funkcijo count_down in zmanjša štetje za eno.

defodštevanje(štetje):
count_min = math.floor (count / 60)
count_sec = štetje % 60

če štetje_sek < 10:
štetje_sek = f"0{count_sec}"

canvas.itemconfig (timer_text, text=f"{count_min}:{count_sec}")

če štetje > 0:
globalno časovnik
časovnik = root.after(1000, odštevanje, štetje - 1)

V nasprotnem primeru pokličite start_timer() funkcijo, nastavite kljukice na nič in izračunajte delovne seje kot najmanjše najbližje celo število števcu, deljeno z dva. Ponovite delovne seje in ustrezno povečajte kljukice. Konfigurirajte kljukice() funkcijo za prikaz besedila kot spremenljivke kljukice.

drugače:
start_timer()
oznake = ""
work_sessions = math.floor (reps / 2)

za _ v obseg (delovne_seje):
oznake += "✓"

check_marks.config (besedilo=oznake)

Inicializirajte primerek Tkinter in prikažite korensko okno. Nastavite naslov svoje aplikacije in jo konfigurirajte tako, da ima nekaj oblazinjenja v obe smeri. Ozadje nastavite na svetlo rumeno.

koren = Tk()
root.title("Aplikacija Pomodoro Timer")
root.config (padx=100, pady=50, bg="#f7f5dd")

Določite gradnik oznake, ki prikaže besedilo kot Timer. Nastavite barvo pisave, barvo ozadja in sloge pisave. Za organiziranje elementov aplikacije uporabite upravitelja postavitve mreže. Postavite oznako naslova v prvo vrstico in drugi stolpec.

title_label = Oznaka (besedilo="Časovnik", fg='#A020F0', bg="#f7f5dd", pisava=("Arial", 50))
title_label.grid (stolpec=1, vrstica=0)

Določite platno s širino in višino 200 x 224 slikovnih pik. Nastavite debelino roba na nič. Uporabite gradnik PhotoImage za prikaz slike Tomato na platnu. Uporabi create_image() način vstavljanja slike na platno.

Uporabi create_text() metoda za ustvarjanje časovnega besedila mm: ss format. Nastavite širino, višino, besedilo, barvo in sloge pisave odštevalnega časa. To postavite v drugo vrstico in drugi stolpec mreže.

platno = Platno (širina=200, višina=224, debelina osvetlitve=0)
tomato_img = FotoSlika (datoteka="paradižnik.png")
canvas.create_image(100, 112, slika=paradižnik_img)
timer_text = canvas.create_text(100, 130, besedilo="00:00", izpolni ="bela", pisava=("Arial", 35, "krepko"))
canvas.grid (stolpec=1, vrstica=1)

Določite dva gumba, start_button, in reset_button. Nastavite besedilo, ki naj se prikaže, brez obrob, funkcijo, ki naj se izvede ob kliku, barvo ozadja in sloge pisave. Postavite gumb Start v prvi stolpec druge vrstice in gumb Ponastavi v isti stolpec tretje vrstice.

start_button = Gumb (besedilo="Začni", debelina osvetlitve=0, ukaz=start_timer, bg="#e7305b", pisava=("arial", 15, "krepko"))
start_button.grid (stolpec=0, vrstica=2)

reset_button = Gumb (besedilo="Ponastaviti", debelina osvetlitve=0, ukaz = reset_timer, bg="#e7305b", pisava=("arial", 15, "krepko"))
reset_button.grid (stolpec=2, vrstica=2)

Ustvarite oznako, ki na začetku prikaže kljukice kot nobene. Nastavite barvo pisave, barvo ozadja in sloge pisave. Postavite ga v drugi stolpec in četrto vrstico, pod gumbe na sredini.

The glavna zanka() funkcija pove Pythonu, naj zažene zanko dogodkov Tkinter in posluša dogodke, dokler ne zaprete okna.

kljukice = Oznaka (besedilo="", fg='#00FF00', bg="#f7f5dd", pisava=("arial", 25, "krepko"))
check_marks.grid (stolpec=1, vrstica=3)

root.mainloop()

Sestavite vso kodo in preizkusite aplikacijo Pomodoro Timer.

Primer izhoda aplikacije Pomodoro Timer

Ko zaženete ta program, boste videli okno z naslovom »Časovnik« in odštevalnik časa, nastavljen na nič. Ob kliku na gumb Start se naslov spremeni v "Delo" in časovnik začne odštevati.

Po natanko 25 minutah se prikaže kljukica in aplikacija začne s petminutnim kratkim odmorom.

Po štirih ciklih Pomodoro se časovnik dolgega premora nastavi za 20 minut. Ko se čas izteče, se delovni časovnik znova začne.

Aplikacije, ki jih lahko sestavite z uporabo matematike in modula Tkinter

Obstaja množica aplikacij, ki jih lahko zgradite z uporabo Tkinterja in modula Math. Začetniki lahko raziskujejo platformo z izdelavo kalkulatorja. Kalkulator je lahko različnih vrst, vključno z aritmetičnim, geometrijskim, grafičnim in finančnim. Ustvarite lahko matematične kartice in generatorje matematičnih nalog, ki jih lahko uporabnik reši.

Pretvornik številskih sistemov, trigonometrija in orodjarna za statistiko se lahko izkažejo za uporabne pri vadbi matematike na enostavnejši in zabaven način.