You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Click为何自动转换所有参数为小写?大写函数参数相关问询

Click中使用大写函数参数绑定CLI输入的规则说明

Click 本身没有强制要求函数参数必须使用小写,你完全可以用MY_ARG这类大写参数名来绑定CLI输入,相关规则和细节如下:

  • 默认参数映射逻辑:如果不显式指定CLI参数名,Click会自动将函数参数名的下划线替换为连字符,并转换为小写作为CLI选项/位置参数名。比如函数参数MY_ARG,默认会对应CLI的--my-arg选项(或位置参数my-arg)。

  • 显式绑定自定义CLI参数名:如果希望CLI参数保持大写风格(比如--MY-ARG),需要在装饰器中显式指定参数名,示例代码:

import click

@click.command()
@click.option("--MY-ARG", type=str, required=True)
def cli(MY_ARG: str):
    print(f"获取到的CLI输入值:{MY_ARG}")

if __name__ == "__main__":
    cli()

执行时输入python your_script.py --MY-ARG test,就能正确将值传递给函数的MY_ARG参数。

  • 关于PR#1055的说明:该PR主要修复了Click对包含大写字母的函数参数名的解析兼容性问题,确保这类参数能被正确识别,但官方文档并未将“允许使用大写参数名”作为单独规则列出——因为Click的设计本身偏向灵活,参数名的大小写更多属于代码风格范畴,而非强制约束。

  • 风格建议:虽然Click支持大写参数,但Python社区通用的PEP8规范建议函数参数使用小写加下划线格式。如果是团队协作项目,建议遵循通用风格;如果是个人项目或需要与外部系统参数名对齐,使用大写参数完全可行。

内容的提问来源于stack exchange,提问作者Maks

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 05:35:58