Skriptsprache/Plugins im Skript

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Antworten
fred.reichbier
User
Beiträge: 155
Registriert: Freitag 29. Dezember 2006, 18:27

Hallo,

ich würde in mein Programm gerne eine Skript-/Plugin-funktion einbauen, sodass man das Programm mit selbstgeschriebenen (Python-, oder sonst irgendwelchen) Skripten erweitern kann.
Ich hatte mir schon überlegt, das mit __import__() zu machen, die Module in Sequenzen zu speichern und dann per hasattr(module[0], funktion1) und getattr(module[0], funktion1) aufzurufen.
Habt ihr da eine bessere Idee, oder sollte ich das so machen? :)

Danke schonmal,

fred
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Was ist das für ein Programm? Ein Python-Programm?

Ich habe das so gelöst, dass ich alle Module in einem Ordner mit __import__ importiert habe und dort jeweils eine PluginKlasse rausgeholt habe, diese dann in eine Liste gespeichert. Simpel.

Nun kannst du zum Beispiel Callbacks defnineren, zum Beispiel on_start und dann versuchen mit try-except in jeder dieser Klasseninstanzen so eine Methode aufzurufen. Und schon ist dein Plugin-System fertig.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
fred.reichbier
User
Beiträge: 155
Registriert: Freitag 29. Dezember 2006, 18:27

Ich meinte halt Python-Plugins im Python-Programm
Aber, gut, dann mache ich das so :)

Danke,

fred
Antworten