我一直在寻找实现这一目标的方法,但没有找到
我有多个python脚本,其中一些是预处理实用工具,一些执行数据分析,一些创建可视化。它们都是相关的,但可能是依赖的,也可能不是依赖的,并且可能有单独的输入参数。我试图在一个包中创建一套工具,并希望用户根据自己的需要选择和运行工具/模块
例如: 下面是一个名为GATK的基于java的软件。“gatk”是一个.jar,它包含几个工具,其中一个是“annotateinterval”,它有一组输入需求。用户这样运行它
gatk AnnotateIntervals \
-R reference.fa \
-L intervals.interval_list \
--interval-merging-rule OVERLAPPING_ONLY \
-O annotated_intervals.tsv
https://gatk.broadinstitute.org/hc/en-us/articles/360040098252-AnnotateIntervals
我想在python中开发类似的东西
main_app.py first_module -l <> -m <>
这可能吗?如果是这样,我如何才能做到这一点
您可能想阅读setuptools' entry-points和/或argparse's sub-commands。这只是一种组合,可能是最“标准”的组合,但还有许多其他选择(poetry、flit、click、fire等等)
相关问题 更多 >
编程相关推荐