ЕЖЕДНЕВНИК НА PYTHON

Python - один из наиболее популярных языков программирования, который широко используется для реализации различных проектов и задач. Один из таких проектов - это создание ежедневника на Python.

Ежедневник на Python может быть создан с помощью использования различных библиотек и инструментов, таких как Tkinter для создания графического интерфейса пользователя (GUI), SQLite для хранения информации в базе данных и Python даты и время модуля для обработки дат и времени.

import tkinter as tk
import sqlite3
from datetime import datetime, date

class DailyPlanner:
def __init__(self, master):
# создаем окно приложения
self.master = master
self.master.title("Ежедневник")
# создаем метку для ввода задач
self.task_label = tk.Label(self.master, text="Введите задачу:")
self.task_label.pack()
# создаем текстовое поле для ввода задач
self.task_entry = tk.Entry(self.master)
self.task_entry.pack()
# создаем метку для выбора даты
self.date_label = tk.Label(self.master, text="Выберите дату:")
self.date_label.pack()
# создаем календарь
self.datepicker = Datepicker(self.master)
self.datepicker.pack()

# создаем кнопку добавления задач
self.add_button = tk.Button(self.master, text="Добавить задачу", command=self.add_task)
self.add_button.pack()

# создаем список задач
self.tasks_list = tk.Listbox(self.master)
self.tasks_list.pack(expand=True, fill=tk.BOTH)
# заполняем список задач
self.show_all_tasks()

def add_task(self):
task = self.task_entry.get()
task_date = self.datepicker.selection
# проверяем валидность выбранной даты
if not task_date:
return
# создаем соединение с базой данных
conn = sqlite3.connect("tasks.db")
# создаем курсор
c = conn.cursor()
# вставляем данные в таблицу задач
c.execute("INSERT INTO tasks (task, date) VALUES (?, ?)", (task, task_date))
# сохраняем изменения
conn.commit()
# закрываем соединение с базой данных
conn.close()
# очищаем поле ввода задач
self.task_entry.delete(0, tk.END)
# обновляем список задач
self.show_all_tasks()

def delete_task(self):
selection = self.tasks_list.curselection()
if selection:
# получаем выбранную задачу
task = self.tasks_list.get(selection)
# создаем соединение с базой данных
conn = sqlite3.connect("tasks.db")
# создаем курсор
c = conn.cursor()
# удаляем задачу из таблицы
c.execute("DELETE FROM tasks WHERE task=?", (task,))
# сохраняем изменения
conn.commit()
# закрываем соединение с базой данных
conn.close()
# обновляем список задач
self.show_all_tasks()

def show_all_tasks(self):
# очищаем список задач
self.tasks_list.delete(0, tk.END)
# создаем соединение с базой данных
conn = sqlite3.connect("tasks.db")
# создаем курсор
c = conn.cursor()
# получаем все задачи
tasks = c.execute("SELECT * FROM tasks").fetchall()
# добавляем задачи в список
for task in tasks:
task_date = datetime.strptime(task[1], "%Y-%m-%d %H:%M:%S").strftime("%d.%m.%Y %H:%M")
self.tasks_list.insert(tk.END, f"{task[0]} ({task_date})")
# закрываем соединение с базой данных
conn.close()

class Datepicker(tk.Frame):
def __init__(self, master):
super().__init__(master)
self.selection = None
self.today = date.today()
# создаем календарь
self.cal = tk.Tk().cal = DatepickerCalendar(self)
self.cal.pack()
# создаем кнопку выбора даты
self.ok_button = tk.Button(self, text="Выбрать дату", command=self.select_date)
self.ok_button.pack()

def select_date(self):
date_str = self.cal.selection_get()
# проверяем валидность выбранной даты
try:
self.selection = datetime.strptime(date_str, "%Y-%m-%d")
except ValueError:
self.selection = None
# закрываем календарь
self.cal.parent.destroy()

class DatepickerCalendar(tk.Frame):
def __init__(self, master):
super().__init__(master)
self.today = date.today()
self.selection = None
# создаем календарь
self.calendar = tkcalendar.Calendar(self, font="Arial 14", selectmode="day", locale="ru_RU",
cursor="hand1", year=self.today.year, month=self.today.month, day=self.today.day)
self.calendar.pack(fill="both", expand=True)

if __name__ == "__main__":
root = tk.Tk()
app = DailyPlanner(root)
root.mainloop()

Приведенный выше код создает простой ежедневник с возможностью добавления и удаления задач. В качестве базы данных используется SQLite, а для создания календаря используется библиотека Tkinter.

Умение парсить на Python — изменит твою жизнь

Simple GUI calculator in Python # 1. Application design creation

Выполняем тестовое задание на Junior Python разработчика с зарплатой 70000р - PDF в MP3

Создание блокнота (Текстовый редактор) на python (питон)

Python как сделать красивую программу под ПК за 10 минут?

Создаем свое ANDROID приложение на PYTHON

Уроки по Python. Делаем заметки на Питоне

BLGPG-0F4F72103FA1-24-11-23-23

Новые материалы: