gnifajio
@gnifajio
Совершенствуюсь каждый день

Как сделать машину состояний на python?

Смотрел исходный код машины состояний в библиотеке aiogram.
Нужен следуюющий функционал:
  • Создание группы состояний
  • Установка текущего состояния
  • Получение текущего состояния

# Как это может выглядеть
from mylib import State, StatesGroup

# Создание группы
class SomeState(StatesGroup):
    state_1 = State()
    state_2 = State()
    state_3 = State()
	
# Установка секущего состояния
SomeState.state_1.set()
bool(SomeState.state_1) # True
bool(SomeState.state_2) # False
bool(SomeState.state_3) # False
SomeState.state_2.set()
bool(SomeState.state_1) # False
bool(SomeState.state_2) # True
bool(SomeState.state_3) # False


Меня не интересуют готовые решения и конкретная реализация, мне нужны только знания о том как это работает.
Особенно меня интересует создание группы состояний.
  • Вопрос задан
  • 1031 просмотр
Пригласить эксперта
Ответы на вопрос 1
@oschenker
Здравствуйте. Для питонистов лучший поисковик - это PyPi.
Ищите там библиотеку transitions.
https://pypi.org/project/transitions/
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы