launchpad表示一个小工厂和一个用于定义可操作项的不同抽象

launchpad的Python项目详细描述


概述

launchpad表示一个小工厂和一个用于定义 可操作的项目。这在创建 需要公开和调用的工具或过程。

每个动作都包含一般细节,如名称、描述等 作为调用操作或使操作公开的更丰富的功能 进一步的子作用或性质。

由于launchpad类只是一个工厂,因此它的人口是基于动态的 在路径上输入(或通过launchpad_plugin_路径公开 变量)。

一个使用的例子可能是…

importlaunchpad# -- Instance launchpad, this gives access to all the# -- actionslp=launchpad.LaunchPad('/usr/my_actions')# -- We can cycle over all the actionsforactioninlp.identifiers():print(action)# -- We can get an action and run itlp.request(action).run()# -- We can access actions direclty tooaction=lp.request('My Action Name')action.run()

安装

如果使用pip,只需运行pip install launchpad。那将会 自动下拉所需的依赖项(scribble&factories)。

注意:如果您安装launchpanel,此模块将被下拉 自动作为依赖项。所以你只需要把这个拉下来 如果不打算使用launchpanel ui,则显式设置模块。

摘要

要定义操作,必须实现启动操作。过程 实现一个操作只是创建一个python文件并继承 从launchAction对象,如下所示:

importlaunchpad# ------------------------------------------------------------------------------classMyAction(launchpad):Name=''Description=__doc__Icon=''Groups=[]@classmethoddefrun(cls):pass@classmethoddefactions(cls):returndict()@classmethoddefproperties(cls):returndict()@classmethoddefviability(cls):returncls.VALID

这些属性在很大程度上是关于 行动。说明、图标和组都是可选的,可以省略 完全如果需要的话-但必须始终填写姓名。

run()是执行此操作的默认操作的位置。

actions()允许您返回键值对字典,其中 键是操作标签,值是函数/可调用的。这允许 你要给你的动作变化或扩展的行为,这是可以接受的 以一致的方式。

sability()是一种机制,用于指示 操作在当前环境中有效。例如,如果你的行为 依赖于存在的路径,或者设置环境变量,您可以运行那些 测试返回操作可行性(有效、无效、禁用)。

properties()是一种存储盲数据的机制。它应该一直回来 一本字典,但那本字典没有形式结构。这是 实现的目的是让您有机会在 行动取决于你的需要。

信贷与合作

这个模块的灵感来自于一些优秀的协作项目 出色的技术艺术家,名叫toby harrison banfield

我总是乐于合作,所以如果你发现了虫子就告诉我,或者 你想贡献或参与只是呼喊!

兼容性

launchpad已经在windows和ubuntu上的python 2.7和python 3.7下进行了测试。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何正确测试和调试使用照相机闪光灯的应用程序?   组织。jboss。放松点。spi。未处理的异常:java。lang.NoSuchMethodError:org。冬眠SessionFactory。openSession()Lorg/hibernate/Session;   在同一行上声明多个Java数组?   java Spring批处理管理员,无法替换占位符“批处理”。商业模式。脚本'   使用JQuery的网站上出现java HtmlUnit“不支持浏览器”错误   java JavaFX如何将图形“裁剪”到按钮   java处理mysql中包含逗号的数字   java Hibernate语法错误:应为点   如何根据给定的日期在java中获取30天的回溯日期   java Servlet URL映射   线程“awteventque0”java中的多线程java JFrame异常。util。EmptyStackException,即使堆栈先初始化   JavaSpring控制器/组件实现可序列化   java如何在游戏完成时启动带有按钮的对话框?   java Hibernate双向多对多实现   如何使用Xpath Java修改XML中的属性值,包括注释部分   java Mockito模拟构造函数示例   java如何在不重写的情况下写入文本文件?