谁能提供一个使用 Yapsy plugin framework 的最小工作示例? ?
最佳答案
这是一个非常简单的例子。它包含三个文件:
- plugins\plugin1.py - 插件。这必须包含一个继承自 IPlugin 的类。
- plugins\plugin1.yapsy-plugin - 关于插件的信息。
- yapsy-example.py - 主脚本。这只是加载它可以在“plugins”目录中找到的所有插件,并在它们上调用一个方法来证明它们可以工作。
您可以在插件目录中添加更多插件,此脚本将围绕它们全部循环。
http://lateral.netmanagers.com.ar/weblog/posts/BB923.html (archived) 上还有另一个更复杂的例子。 .
yapsy-example.py
from yapsy.PluginManager import PluginManager
def 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 IPlugin
class PluginOne(IPlugin):
def print_name(self):
print "This is plugin 1"
plugins\plugin1.yapsy-plugin
[Core]
Name = Plugin 1
Module = plugin1
[Documentation]
Author = John Smith
Version = 0.1
Website = http://lotsofplugins.com
Description = My first plugin
关于python - Yapsy 最小示例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5333128/