【Python argparse与nargs行为不正确】教程文章相关的互联网学习教程文章

python – 使用argparse,如何将用户输入放入列表?【代码】

我需要文件路径,os.path.dirname不给我完整的路径(它不包括文件本身 – 例如home / a / b而不是home / a / b / filename).我还需要文件名,以便以后打印.由于用户输入的参数是文件名,我需要一种方法将输入存储到列表中.import sys import argparse import inspect, os import os.pathfile_list = []if __name__ == '__main__':parser = argparse.ArgumentParser() parser.add_argument('file', type=argparse.FileType('r'), n...

python – 使用argparse作为不带前缀的强制参数【代码】

我正在尝试在我的python应用程序中使用argparse模块.我的应用程序应该使用单个强制参数运行,不带任何前缀.我无法想出办法.解决方法:这是一个使用argparse只需要一个整数参数的简单示例:import argparseparser = argparse.ArgumentParser(description='process an integer') parser.add_argument('integer', metavar='N', type=int, nargs=1,help='an integer') args = parser.parse_args() print(args.integer)将此代码保存在argp...

argparse模块的使用 | python【代码】

argparse模块的使用 | python 用于接收python命令行下的命令行参数,并进行多种功能解析的模块 基本使用步骤: 定义一个文件名为test_parse.py的文件,内容如下: from argparse import ArgumentParser # 其中最常用的一个模块:ArgumentParser # 定义一个命令行参数解析器对象 parser = ArgumentParser() # 为命令行添加一个参数,参数名为argname1 parser.add_argument("argname1") # 返回命令行参数的集合的某种数据结构对象,...

Python - 命令行参数(argparse)【图】

test.py:import argparsedesc = "【Welcome to get there!】" parser = argparse.ArgumentParser(description=desc) parser.add_argument('--lr', type=float, default=0.0001, help='The learning rate') parser.add_argument('--tc', type=int, default=10, help='The count of training')args = parser.parse_args() print("lr = ",args.lr) print("tc = ",args.tc) demo.py:#参数可以被导入from test import *print("*lr* = ...

python – 有没有办法让argparse.ArgumentParser.parse_args()不要退出参数错误?【代码】

例如:import argparseparser = arparse.ArgumentParser() # parser.add_argument(...) ... args = parser.parse_args(args_list)问题是,如果args_list中存在错误,parser.parse_args会自动退出.是否有一个设置让它引发更友好的异常?如果有任何方法,我不想要捕获SystemExit并从中提取所需的错误消息.解决方法:你可以用args, unknown = parser.parse_known_args(args_list)然后,任何未知的参数将简单地以未知方式返回. 例如,import ...

python – 对象没有使用argparse的属性【代码】

我正在关注this tutorial尝试将argparse实现为我正在编写的python脚本. 当我从教程中运行此代码片段时,我收到以下错误:[05:51 PM] user Scripts> cat argparse.py import argparse parser = argparse.ArgumentParser() parser.parse_args()[05:51 PM] user Scripts> python3 argparse.py Traceback (most recent call last):File "argparse.py", line 1, in <module>import argparseFile "/home/brian/Documents/Scripts/argparse...

python – argparse:将参数与另一个参数相关联【代码】

使用argparse,可以重复一个参数并将所有值收集到一个列表中:parser = ArgumentParser() parser.add_argument('-o', '--output', action='append')args = parser.parse_args(['-o', 'output1', '-o', 'output2']) print(vars(args)) # {'output': ['output1', 'output2']}我正在寻找一种方法来将标志与每个参数相关联,以便可以这样做:args = parser.parse_args(['-o', 'output1', '--format', 'text','-o', 'output2', '--format'...

python – Argparse:如何区分解析器和子解析器的参数【代码】

我想使用带有参数和位置参数的python-argparse.假设我在命令行上有我的脚本(这只是一个简单和愚蠢的例子),这是我的代码到目前为止:#!/usr/bin/env python import argparseparser = argparse.ArgumentParser() parser.add_argument('--verbose', action='store_true') subparsers = parser.add_subparsers(help='command', dest='command') cmd1_parser = subparsers.add_parser('command1') cmd1_parser.add_argument('--verbose'...

python – argparse设置默认为多个args【代码】

我想使用argparse来指定一个带有三个整数值的选项:比如指定一个范围:start,end,step.parser.add_argument('--range', nargs=3, metavar=('start', 'end', 'step'), type=int, help="specify a range')但是,我不清楚如何为所有三个值提供默认值.我是否需要将其定义为字符串并自行解析?解决方法:这对你有用吗?parser.add_argument('--range', default=[4,3,2], nargs=3, metavar=('start', 'end', 'step'),type=int, help='speci...

使用argparse进行python导入脚本【代码】

A =一个脚本,其结构由命令行调用,其中包含由python argparse库内部解析的选项.B =另一个应该调用A内部函数的脚本. 我相信在B中导入A是我需要的东西,但它返回了我的使用选项,然后退出python解释器. 有没有办法保存A并将其导入B传递给args?或者我应该重写避免解析器使用?解决方法:在脚本A中,在解析参数和执行A作业之前检查您是否是“主脚本”,否则当您只需要使用A作为库时,也会运行此脚本.if __name__ == "__main__":parser = argp...

Python argparse作为一个函数【代码】

以这种方式获取命令行参数有什么固有的错误吗?我的意思是将参数解析放入自己的函数中.是否会被视为非Pythonic或更多?#!/usr/bin/pythonimport argparsedef getArgs(argv=None):parser = argparse.ArgumentParser(description="calculate X to the power of Y")group = parser.add_mutually_exclusive_group()group.add_argument("-v", "--verbose", action="store_true")group.add_argument("-q", "--quiet", action="store_true...

在Docker容器中将参数传递给Python argparse【代码】

我正在着手利用Docker集装箱.我有一个python脚本调用几个API并解析一个文件.该脚本获取API的服务器URL,API密钥以及要解析的文件的文件路径的参数.我使用argparse在脚本中处理这些. 我如何将这些传递到Docker?我不想硬编码任何东西,因为我希望将此脚本交给需要定期运行并根据结果采取措施的工程师. 谢谢你的帮助.我一直在搜索,但似乎硬编码到dockerfile中的东西是建议 – 我希望用户能够在运行时将这些内容放入.或许我找到了答案,我...

Python3.7 - Argparse模块的用法

argparse 是一个命令行参数解析模块。 argparse 是python自带的命令行参数解析包,可以用来方便地读取命令行参数,当你的代码需要频繁地修改参数的时候,使用这个工具可以将参数和代码分离开来,让你的代码更简洁,适用范围更广。argparse使用比较简单,常用的功能可能较快地实现出来。 【Reference】 1、argparse简要用法总结:http://vra.github.io/2017/12/02/argparse-usage/

python – argparse条件参数结构【代码】

我想使用argparse,因此提供的参数数量决定了执行哪个子例程. 例如,在下面的脚本中,我希望argparse能够执行以下操作:dmsconvert.py 12.5 >>> (12, 30, 0)dmsconvert.py 12 30 0.0 >>> 12.5相反,我能用argparse做到这一点的唯一方法是有一个明确的选项,即:dmsconvert.py 12.5 >>> (12, 30, 0)dmsconvert.py -a 12 30 0.0 >>> 12.5 任何人都可以建议使用argparse实现我的首选方法吗?注意:我希望自动生成的argparse帮助文本看起来...

Python argparse多功能性对于true / false和string?【代码】

我在python 2.7脚本中使用argparse有以下参数解析器:parser = argparse.ArgumentParser(description=scriptdesc) parser.add_argument("-l", "--list", help="Show current running sesssions", dest="l_list", type=str, default=None)我希望能够运行:./script -l and ./script -l session_1这样脚本就可以返回所有会话或单个会话而无需额外的参数,例如-s 但是我找不到在单个arg中执行此操作的方法.解决方法:这有点像黑客,因为它...