Создание консольного приложения для управления заметками на языке Python может быть очень полезным и удобным. Я сам опробовал этот подход и хочу поделиться своим опытом.Первым шагом для создания консольного приложения будет создание класса для заметок. Я назвал его ″Заметка″. Класс должен содержать следующие атрибуты⁚ идентификатор, заголовок, тело заметки и дату/время создания или последнего изменения заметки.python
class Заметка⁚
def __init__(self, id, заголовок, тело, дата)⁚
self.id id
self.заголовок заголовок
self.тело тело
self.дата дата
Теперь, когда у нас есть класс для заметок, мы можем перейти к созданию основного класса для управления заметками. Я назвал его ″Приложение″.python
import json
class Приложение⁚
def __init__(self)⁚
self.заметки []
def загрузить_заметки(self)⁚
try⁚
with open(″заметки.json″, ″r″) as файл⁚
данные json.load(файл)
for заметка_в_данных in данные⁚
id заметка_в_данных[″id″]
заголовок заметка_в_данных[″заголовок″]
тело заметка_в_данных[″тело″]
дата заметка_в_данных[″дата″]
заметка Заметка(id, заголовок, тело, дата)
self.заметки.append(заметка)
except FileNotFoundError⁚
pass
def сохранить_заметки(self)⁚
данные []
for заметка in self.заметки⁚
данные.append({
″id″⁚ заметка.id,
″заголовок″⁚ заметка.заголовок,
″тело″⁚ заметка.тело,
″дата″⁚ заметка.дата
})
with open(″заметки.json″, ″w″) as файл⁚
json.dump(данные, файл)
def создать_заметку(self)⁚
id input(″Введите идентификатор заметки⁚ ″)
заголовок input(″Введите заголовок заметки⁚ ″)
тело input(″Введите текст заметки⁚ ″)
дата input(″Введите дату/время создания заметки⁚ ″)
заметка Заметка(id, заголовок, тело, дата)
self.заметки.append(заметка)
self.сохранить_заметки
print(″Заметка успешно создана!″)
def просмотреть_заметки(self)⁚
if self.заметки⁚
for заметка in self.заметки⁚
print(f″Заголовок⁚ {заметка.заголовок}″)
print(f″Тело заметки⁚ {заметка.тело}″)
print(f″Дата/время создания заметки⁚ {заметка.дата}″)
else⁚
print(″Нет созданных заметок″)
def удалить_заметку(self, id)⁚
for заметка in self.заметки⁚
if заметка.id id⁚
self.заметки.remove(заметка)
self.сохранить_заметки
print(″Заметка успешно удалена!″)
return
print(″Заметка с таким идентификатором не найдена″)
def редактировать_заметку(self, id)⁚
for заметка in self.заметки⁚
if заметка.id id⁚
новый_заголовок input(″Введите новый заголовок заметки⁚ ″)
новое_тело input(″Введите новый текст заметки⁚ ″)
новая_дата input(″Введите новую дату/время заметки⁚ ″)
заметка.заголовок новый_заголовок
заметка.тело новое_тело
заметка.дата новая_дата
self.сохранить_заметки
print(″Заметка успешно изменена!″)
return
print(″Заметка с таким идентификатором не найдена″)
Теперь можно создать объект класса ″Приложение″ и использовать его методы для управления заметками.python
if __name__ ″__main__″⁚
приложение Приложение
приложение.загрузить_заметки
while True⁚
print(″Меню⁚″)
print(″1. Создать заметку″)
print(″2. Просмотреть заметки″)
print(″3. Удалить заметку″)
print(″4. Редактировать заметку″)
print(″5. Выйти″)
выбор input(″Выберите пункт меню⁚ ″)
if выбор ″1″⁚
приложение.создать_заметку
elif выбор ″2″⁚
приложение.просмотреть_заметки
elif выбор ″3″⁚
id input(″Введите идентификатор заметки для удаления⁚ ″)
приложение.удалить_заметку(id)
elif выбор ″4″⁚
id input(″Введите идентификатор заметки для редактирования⁚ ″)
приложение.редактировать_заметку(id)
elif выбор ″5″⁚
break
else⁚
print(″Неверный выбор, попробуйте снова″)
Теперь у вас есть простое, но эффективное консольное приложение для управления заметками с использованием классов на языке Python. Вы можете сохранять, читать, добавлять, редактировать и удалять заметки, сохраняя их в формате JSON с разделением полей через точку с запятой.