python - 单击模块忽略子组命令
问题描述
尝试实现来自palletsprojects 网站的示例: https ://click.palletsprojects.com/en/7.x/commands/
imoport click
@click.group()
@click.option('--debug/--no-debug', default=False)
def cli(debug):
click.echo('Debug mode is %s' % ('on' if debug else 'off'))
@cli.command() # @cli, not @click!
def sync():
click.echo('Syncing')
以下行在我的终端中不产生任何输出:
python cli_test.py cli
python cli_test.py sync
python cli_test.py
当我希望为第二行打印“同步”时。
解决方案
您(大概从我对库的理解)应该在设置命令和组后调用主命令。将此附加到您的代码中:
if __name__ == '__main__':
cli()
并且python cli_test.py sync
应该反过来调用sync
命令。
推荐阅读
- .net - 有什么方法可以在命令行中检查 NuGet 包是否支持 .Net 标准?
- java - Chrome 选项 - Selenium 3.10 - NoSuchMethodError: com.google.common.collect.ImmutableList.toImmutableList()
- node.js - Couchbase Sync 网关 - 文件上传为附件
- ios - 如何在每 N 个单词之后将子字符串作为分隔符添加到段落
- django - Django SQLite 外键不匹配错误
- vb.net - 使用 VB.Net 使用 SQL Server 2000 修改连接字符串 Visual Studio 2015
- php - 如何使用PHP根据类别计算分数
- email - 使用谷歌应用脚本获取 gmail 中的当前线程 ID
- ios - ionic 3 cordova ios build failed 'google/protobuf/Api.pbobjc.h' 文件未找到
- email - Jenkins - 如何在 FxCop 报告中发送包含警告和问题的电子邮件