gpt4 book ai didi

python - 使用 argparse 传递以减号 (-) 开头的参数值

转载 作者:行者123 更新时间:2023-12-01 02:25:53 25 4
gpt4 key购买 nike

我正在做一个命令行实用程序,可以接收以减号或加号开头的参数,例如 -gtest+gtest 问题是 python3不接受这个:

这是重现此问题的最小代码:导入argparse

if (__name__== "__main__"):
parser = argparse.ArgumentParser()
parser.add_argument('-s', '--string', action='store',
help='String value')
p = parser.parse_args()
if p.string:
print("pass value:", p.string)

我尝试将其调用为:

./example.py -s -gtest
./example.py -s "-gtest"
./example.py -s \-gtest

并且总是出现下一个错误:

usage: example.py [-h] [-s STRING]
example.py: error: argument -s/--string: expected one argument

所以,我的问题是如何使用 argparse 传递以减号开头的参数

最佳答案

您可以使用以下命令运行它:

python example.py -s-gtest
python example.py -s+gtest

因此,只需不放置任何空格,也不以任何特殊方式转义它。

关于python - 使用 argparse 传递以减号 (-) 开头的参数值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47408435/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com