30 votes

Quelles sont les meilleures implémentations de Python Finite State Machine

Ce sont les Python FSM Implémentations j'ai trouvé jusqu'à présent...

J'ai besoin d'analyser le texte du fichier de configurations, et je suis à la recherche d'un FSM de mise en œuvre qui offre la possibilité de munge de données avant d'entrer à l'état suivant.

17voto

Mansour Points 536

Quand je faisais un projet web, j'ai trouvé la machine à état javascript de Jake Gordon très utile. Un peu plus tard, j'avais besoin d'un FSM pour python et je n'ai rien trouvé qui corresponde à celui de javascript en termes de simplicité et de flexibilité, je l'ai donc porté sur python. Ça s'appelle fysom .

4voto

Rogerio Atem Points 46

Vous pouvez également vérifier la Fluidité (et ses inoculable version, xFluidity), qui est UML compatibles et peuvent être "injecté" dans vos propres objets. Vous pouvez trouver la Fluidité ici: https://github.com/nsi-iff/fluidity Mon post sur son utilisation: http://eis-development.blogspot.com.br/2011/06/enterprise-information-systems-patterns.html

2voto

Judge Maygarden Points 14964

C'est peut-être juste moi, mais j'ai toujours trouvé beaucoup plus facile de faire rouler votre propre FSM pour des tâches simples, sauf si vous avez besoin d'un lexer et d'un analyseur complet.

2voto

gecco Points 4063

Peut-être l'outil PySCXML est complexe pour vos besoins, mais je pense que vous devriez quand même avoir un regard plus trop. Ce projet utilise le W3C définition: État Graphique XML (SCXML): État de la Machine de Notation pour le Contrôle de l'Abstraction

SCXML fournit un générique de l'état de la machine en fonction de l'environnement d'exécution basé sur CCXML et Harel Tables d'État

Actuellement, SCXML est un projet de travail; mais les chances sont assez élevées que c'est l'obtention d'une recommandation du W3C bientôt (Il est le 16e le projet).

Un autre point intéressant à souligner, c'est qu'il y a un Apache Commons projet visant à créer et à maintenir un Java SCXML moteur capable d'exécuter une machine d'état défini à l'aide d'un SCXML document, tout en faisant abstraction de l'environnement interfaces... Et pour certaines autres outils à l'appui de cette technologie dans l'avenir, quand SCXML est en laissant le projet de statut...

1voto

Je ne sais pas si cela aide, car le message est très ancien, mais j'ai écrit une bibliothèque FSM déclarative pour Python qui peut être localisée @ https://github.com/thomasquintana/declarative-fsm

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X