如何使用 argparse 将参数列表传递给命令行程序?

Barbara Streisand
发布: 2024-10-30 04:10:28
原创
859 人浏览过

How can you pass a list of arguments to a command-line program using argparse?

使用 argparse 将列表作为命令行参数传递


构建命令行程序时,允许用户传递列表作为参数。 argparse 使这成为可能,并提供了几个选项来完成此操作。


nargs


要接收参数列表,使用“nargs”参数。指定“ ”接受一个或多个参数,“*”接受零个或多个参数,“?”接受零或一,或特定数字(如 2)以接受确切数量的参数。


parser = argparse.ArgumentParser()<br>parser.add_argument('- l', '--list', nargs=' ')<br>

这种方法使用户可以轻松地在单个输入中提供多个参数。


append


或者,您可以使用“append”操作将遇到的每个参数追加到列表中。 /p>

parser.add_argument('-l', '--list', action='append')<br>

此方法需要用户多次指定该标志,每个要包含在列表中的参数一个。


避免 type=list


< ;p>虽然将“类型”设置为“列表”似乎很直观,但不建议这样做,因为它返回列表的列表,而不是展平的列表。这可能会导致意外行为。


用法示例


考虑一个用户需要传递列表的脚本

parser = argparse.ArgumentParser()<br>parser.add_argument('-l', '--list', nargs=' ', type=int)<br>

这允许用户输入多个整数,然后这些整数会自动转换为整数列表并存储在 'list' 变量中。


注意:



  • 避免在命令行上使用引号,因为它们会干扰 argparse 的解析。
  • 不要使用 type=list,因为它会导致列表列表而不是扁平列表。

登录后复制

以上是如何使用 argparse 将参数列表传递给命令行程序?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!