草庐IT

argparse_test

全部标签

python - argparse (python) 是否支持互斥的参数组?

如果我有参数'-a','-b','-c','-d',与add_mutually_exclusive_group()函数我的程序将只需要使用其中一个。有没有办法将它结合起来,以便程序只接受'-a999-b999'或'-c999-d999'?编辑:添加一个简单的程序更清晰:>>>parser=argparse.ArgumentParser()>>>group=parser.add_mutually_exclusive_group()>>>group.add_argument('-a')>>>group.add_argument('-b')>>>group.add_argument('-c'

python - 如何在 py.test 中显示警告

我刚刚跑了py.test在我的代码上并得到以下输出:==================6passed,2pytest-warningsin40.79seconds=======================但是,我看不到py.test想要警告我什么。如何打开控制台的警告输出?py.test--help为我提供了--strict标志:--strictrunpytestinstrictmode,warningsbecomeerrors.但是我只想查看输出,而不是让我的测试失败。我检查了pytest.org和thisquestion但他们只关心在python中断言警告,而不是显示在命令行

python - 如何针对不同版本的 python 运行 py.test?

是否可以在没有插件(如xdist)或tox的情况下使用不同版本的python运行py.test? 最佳答案 最简单的方法是直接用-m运行pytest模块,例如:python2.6-mpytest请注意,您必须为那个版本的Python安装pytest。此外,您还需要安装用于该版本Python的所有pytest插件。 关于python-如何针对不同版本的python运行py.test?,我们在StackOverflow上找到一个类似的问题: https://sta

python - argparse 模块在 Python 中不起作用

我正在尝试让argparse模块在Python中工作。我的问题是,在全新安装时,我得到以下信息:File"test.py",line3,inimportargparseFile"/home/jon/Pythons/realmine/argparse.py",line3,inparser=argparse.ArgumentParser(description='Shortsampleapp')AttributeError:'module'objecthasnoattribute'ArgumentParser'test.py是:importargparse显然,我错过了一些东西。有人可以帮

python - Python 和 argparse 的多个位置参数

我正在尝试使用argparse来解析我正在处理的程序的命令行参数。本质上,我需要支持在可选参数中传播的多个位置参数,但不能让argparse在这种情况下工作。在实际程序中,我使用的是自定义操作(每次找到位置参数时,我都需要存储命名空间的快照),但我遇到的问题可以通过append复制>行动:>>>importargparse>>>parser=argparse.ArgumentParser()>>>parser.add_argument('-a',action='store_true')>>>parser.add_argument('-b',action='store_true')>>>

Python argparse required=True 但 --version 功能?

在我的所有脚本中,我使用标准标志--help和--version,但是我似乎无法弄清楚如何制作--带有parser.add_argument(...,required=True)的版本。importsys,os,argparseparser=argparse.ArgumentParser(description='Howtoget--versiontowork?')parser.add_argument('--version',action='store_true',help='printversioninformation')parser.add_argument('-H','--h

python - 应该 pytest 等人。进入 tests_require[] 或 extras_require{testing[]}?

我正在编写一个使用py.test进行测试的python程序,现在一个测试也依赖于numpy。我应该在setup.py的哪个位置添加这些依赖项?目前我的setup.py的相关部分如下所示:[...]'version':'0.0.1','install_requires':[],'tests_require':['pytest'],'cmdclass':{'test':PyTest},'extras_require':{'testing':['pytest'],},[...]有两次pytest感觉已经有些奇怪了,我不确定在哪里添加numpy。 最佳答案

python - 处理 argparse 输入中的空格

使用python和argparse,用户可以输入带有-d标志的文件名。parser.add_argument("-d","--dmp",default=None)但是,当路径包含空格时,这会失败。例如。-dC:\SMTHNG\Namewithspaces\MORE\file.csv注意:空格会导致错误(标志只接受'C:SMTHNG\Name'作为输入)。error:unrecognizedarguments:withspaces\MORE\file.csv我花了比它应该找到解决这个问题的时间更长的时间......(没有找到问答,所以我自己发帖) 最佳答案

python - 当 py.test 测试失败时,PyCharm 可以进入调试吗

使用py.test运行测试时,有一个--pdb选项可以在失败时输入pdb。在PyCharm中运行相同的测试时,是否有类似的方式进入调试器? 最佳答案 有一个py.test插件,pytest-pycharm,这将在测试发出未捕获的异常时停止PyCharm调试器。 关于python-当py.test测试失败时,PyCharm可以进入调试吗,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions

python - 如何在python argparse中使参数可选

我想让myprog的这些调用工作,而不是其他的。$python3myprog.py-iinfile-ooutfile$python3myprog.py-ooutfile$python3myprog.py-o$python3myprog.py特别是我想让指定infile而不是outfile成为非法。在第三种情况下,假定输出文件的默认名称为“out.json”。在第二种、第三种和第四种情况下,假定输入文件的默认名称为“file.n.json”,其中n是整数版本号。在第四种情况下,输出文件将是“file.n+1.json”,其中n+1是比输入文件上的版本大一号的版本号。我的代码的相关部分是: