Този полезен инструмент може да ви помогне да работите по-продуктивно и можете да го създадете сами с помощта на Tkinter.
Техниката Pomodoro е техника за управление на времето, разработена от Франческо Чирило. Това включва използване на таймер за разделяне на работата на интервали от 25 минути, разделени от почивка от пет минути. След като завършите този цикъл четири пъти, можете да си направите по-дълга почивка от 20 минути.
Техниката Pomodoro повишава производителността, елиминира разсейването и увеличава фокуса на индивида върху работата. Тази техника ви освобождава от многозадачността и ви възнаграждава с почивки като награда. Това ви помага да останете спокойни и мотивирани да продължите всеотдайно работата си.
Модулът Tkinter и Math
За да изградите приложението Pomodoro Timer, имате нужда от Tkinter и модул Math. Tkinter е стандартната GUI библиотека за Python. Той предлага разнообразие от приспособления като бутони, етикети и текстови полета, така че можете да разработвате приложения за нула време. За да инсталирате Tkinter, отворете терминал и изпълнете:
pip инсталирайте tkinter
Модулът Math идва в стандартната библиотека на Python и е много полезно при извършване на математически изчисления. Предлага се с аритметични, тригонометрични, експоненциални, логаритмични функции, полезни функции и константи като pi и e.
Как да създадете приложение за таймер Pomodoro с помощта на Python
Тук можете да намерите изходния код на приложението Pomodoro Timer, използващо Python GitHub хранилище.
Започнете с импортиране на Tkinter и модула Math. Инициализирайте променливите за време за ефективност на работата на Pomodoro, време за почивка, време за дълга почивка, брояч и таймер. Ще използвате променливата брояч, повторения, за да разберете броя цикли на Pomodoro, които таймерът е изпълнил.
от tkinter импортиране *
импортиране математика
WORK_MIN = 25
SHORT_BREAK_MIN = 5
LONG_BREAK_MIN = 20
повторения = 0
таймер = Нито един
Дефинирайте функция, reset_timer(). Започнете, като зададете Започнете състояние на бутона до нормално, за да го активирате; ще видите по-късно къде да го деактивирате.
Извикайте метода after_cancel(), за да спрете функцията на таймера. Използвай item_config() метод върху платното, за да нулирате показания на екрана таймер на нула. Променете текста на заглавието на "Таймер" и го оцветете в лилаво. Изчистете всички налични отметки, като зададете текста на празния низ.
Обърнете се към глобалната променлива повторения и я нулирайте.
дефreset_timer():
старт_бутон["държава"] = "нормален"
root.after_cancel (таймер)
canvas.itemconfig (таймер_текст, текст="00:00")
title_label.config (текст="Таймер", fg=#A020F0')
check_marks.config (текст="")
глобален повторения
повторения = 0
Дефинирайте функция start_timer(). Това е мястото, където ще деактивирате Започнете бутон, за да попречите на потребителя да щракне върху него отново.
Продължете, като се позовавате на глобалния повторения променлива и я увеличава. Получете броя секунди за извършване на вашата работа, кратката почивка и дългата почивка. Ако променливата на брояча не оставя остатък, когато се раздели на осем (четири цикъла на Pomodoro, където един цикъл се състои от работа и кратка почивка), стартирайте таймера за дълга почивка и го покажете на екрана в синьо цвят.
По същия начин, ако остатъкът е нула, когато се раздели на две, започнете и покажете таймера за кратка пауза в зелен цвят. В противен случай стартирайте работния таймер и го покажете в червен цвят.
дефначален_таймер():
старт_бутон["държава"] = "хора с увреждания"
Дефинирайте функция, обратно броене() който приема броене. Задайте променливата за минимален брой като най-близкото малко цяло число до броя, разделен на 60. Задайте второто преброяване като модул на преброяване с 60. Ако секундите са по-малко от 10, покажете допълнителна нула пред тях. Задайте на платното на дисплея текущата минута и час, както е изчислено по-горе.
Ако броячът е по-голям от нула, обърнете се към глобалния таймер и задайте да поиска обратно извикване на самата функция count_down след забавяне от една секунда и намалете брояча с единица.
дефобратно броене(броя):
count_min = math.floor (брой / 60)
count_sec = броене % 60ако count_sec < 10:
count_sec = f"0{count_sec}"canvas.itemconfig (таймер_текст, текст=е"{count_min}:{count_sec}")
ако брои > 0:
глобален таймер
таймер = root.after(1000, обратно броене, броене - 1)
В противен случай се обадете на start_timer() функция, задайте отметките на нула и изчислете работните сесии като най-малкото най-близко цяло число до брояча, разделено на две. Прегледайте работните сесии и увеличете съответно отметките. Конфигурирайте check_marks() функция за показване на текста като променлива за отметка.
друго:
start_timer()
марки = ""
work_sessions = math.floor (повторения / 2)за _ в диапазон (работни_сесии):
марки += "✓"
check_marks.config (текст=марки)
Инициализирайте екземпляра на Tkinter и покажете основния прозорец. Задайте заглавието на вашето приложение и го конфигурирайте да има подложка в двете посоки. Задайте фона на светложълт.
корен = Tk()
root.title(„Приложение за таймер Pomodoro“)
root.config (padx=100, pady=50, bg="#f7f5dd")
Дефинирайте приспособление за етикет, което показва текста като таймер. Задайте цвета на шрифта, цвета на фона и стиловете на шрифта. Използвайте мениджъра за оформление на мрежата, за да организирате елементите на приложението. Поставете етикета на заглавието в първия ред и втората колона.
title_label = Етикет (текст="Таймер", fg=„#A020F0“, bg="#f7f5dd", шрифт=("Arial", 50))
title_label.grid (колона=1, ред=0)
Дефинирайте платно с ширина и височина 200x224 пиксела. Задайте дебелината на границата на нула. Използвайте изпълнимия модул PhotoImage, за да покажете картината на домат върху платно. Използвай create_image() метод за вмъкване на изображението върху платното.
Използвай create_text() метод за създаване на текст за време mm: ss формат. Задайте ширината, височината, текста, цвета и стиловете на шрифта на времето за обратно отброяване. Поставете това във втория ред и втората колона на мрежата.
платно = Платно (ширина=200, височина=224, highlightthickness=0)
tomato_img = Фотоизображение (файл="домат.png")
canvas.create_image(100, 112, изображение=домат_img)
timer_text = canvas.create_text(100, 130, текст="00:00", попълване="бял", шрифт=("Arial", 35, "удебелен"))
canvas.grid (колона=1, ред=1)
Определете два бутона, старт_бутон, и бутон за рестартиране. Задайте текста, който трябва да показва, без рамка, функцията, която трябва да изпълнява при щракване, цвета на фона и стиловете на шрифта. Позиционирайте бутона Старт в първата колона, втори ред и бутона Нулиране в същата колона, трети ред.
start_button = Бутон (текст="Старт", highlightthickness=0, команда=старт_таймер, bg="#e7305b", шрифт=("ариал", 15, "удебелен"))
start_button.grid (колона=0, ред=2)
reset_button = Бутон (текст="Нулиране", highlightthickness=0, команда = reset_timer, bg="#e7305b", шрифт=("ариал", 15, "удебелен"))
reset_button.grid (колона=2, ред=2)
Създайте етикет, който първоначално показва отметките като никакви. Задайте цвета на шрифта, цвета на фона и стиловете на шрифта. Поставете го във втората колона и четвъртия ред, под бутоните в средата.
The mainloop() функцията казва на Python да стартира цикъла на събитията на Tkinter и да слуша за събития, докато затворите прозореца.
check_marks = Етикет (текст="", fg=„#00FF00“, bg="#f7f5dd", шрифт=("ариал", 25, "удебелен"))
check_marks.grid (колона=1, ред=3)
root.mainloop()
Съберете целия код заедно и изпробвайте приложението Pomodoro Timer.
Примерен резултат от приложението Pomodoro Timer
Когато стартирате тази програма, ще видите прозорец със заглавие „Таймер“ и таймер за обратно отброяване, зададен на нула. При натискане на бутона Старт заглавието се променя на „Работа“ и таймерът започва да отброява.
След точно 25 минути се появява отметката и приложението започва таймера за кратко прекъсване от пет минути.
След четири цикъла на Pomodoro, таймерът за дълго прекъсване се задейства за 20 минути. След като времето изтече, работният таймер започва отново.
Приложения, които можете да създадете с помощта на Math и Tkinter модул
Има множество приложения, които можете да създавате с помощта на Tkinter и модула Math. Начинаещите могат да изследват платформата, като създадат калкулатор. Калкулаторът може да бъде от различни видове, включително аритметичен, геометричен, графичен и финансов. Можете да създавате математически флаш карти и генератори на математически задачи, които потребителят да решава.
Кутия с инструменти за преобразуване на числови системи, тригонометрия и статистика може да се окаже полезна за практикуване на математика по по-прост и забавен начин.