python - 来自其他 python 脚本的 PyInvoke 执行任务
问题描述
我正在阅读pyinvoke 文档,并且正在寻找从其他 python 脚本执行调用任务的任何简单方法。任务没有方法运行,所以我无法导入它们,只需 .run()。我发现有Executor 类,但我知道我需要先声明任务集合,然后我可以从脚本运行其中一个任务。也许还有另一种方法可以从其他不是任务的python脚本中最简单地做到这一点?
解决方案
重点是“任务也是一个python函数”,所以你可以通过调用任务函数来调用任务,如下所示:
test
在 中定义任务函数a.py
。
#a.py
from invoke import task
@task
def test(c):
print("hello, I'm a-test!")
通过调用函数导入模块a
并执行任务。a.test()
#tasks.py
from invoke import task
import a
@task
def executeatest(c):
print('executing [a-test] task defined in "a.py"')
a.test(c)
当你执行inv executeatest
时,它的结果是:
executing [a-test] task defined in "a.py"
hello, I'm a-test!
推荐阅读
- c++ - shuffle() 函数和 SIMD 代码生成
- mysql - ERROR 1064 (42000): MySql Database Setup/Recovery Issue from Backupon Mac
- python-3.x - 当密钥为 21-22 个字符时,如何使用初始化向量和解密密钥解密 256 位 AES 密钥?
- python - Python vba excel参考
- javascript - 400 Bad request 使用 Axios 调用 API
- python - 导入模块“pandasgui”时出现 Kivy 问题。它显示黑屏并且按钮被冻结
- python - 在 Python 中将二进制转换为有符号的小端 16 位整数
- javascript - 如何使用loader.load("filename.json.gz") - 在threejs中加载压缩文件
- reactjs - 如何在 Ionic React 中创建一个包含可变数量项目的列表?
- java - 如何创建仅具有特定字段的新 java 对象类?