这是一个非常简单的示例。它具有三个文件:
- plugins plugin1.py-插件。它必须包含一个从IPlugin继承的类。
- plugins plugin1.yapsy-plugin-有关插件的信息。
- yapsy-example.py-主脚本。这只会加载它可以在“ plugins”目录中找到的所有插件,并在它们上调用一个方法以证明它们可以工作。
您可以将更多插件添加到plugins目录,此脚本将在所有插件周围循环。
http://lateral.netmanagers.com.ar/weblog/posts/BB923.html(已存档)上还有另一个更复杂的示例。
yapsy-example.py
from yapsy.PluginManager import PluginManagerdef main(): # Load the plugins from the plugin directory. manager = PluginManager() manager.setPluginPlaces(["plugins"]) manager.collectPlugins() # Loop round the plugins and print their names. for plugin in manager.getAllPlugins(): plugin.plugin_object.print_name()if __name__ == "__main__": main()
plugins plugin1.py
from yapsy.IPlugin import IPluginclass PluginOne(IPlugin): def print_name(self): print "This is plugin 1"
plugins plugin1.yapsy-plugin
[Core]Name = Plugin 1Module = plugin1[documentation]Author = John SmithVersion = 0.1Website = http://lotsofplugins.comDescription = My first plugin



