조건부 명령 줄 인수를 구문 분석하려고합니다. TESTNAME이 명령에 지정되고있는 경우는 CPU와 boradname을 제공하기 위해 compulasary처럼
여기이 코드에서 내 코드중첩 된 명령 줄 파서에서 오류가 발생했습니다. 인수가 너무 적습니다.
import argparse
def parseArguments():
parser = argparse.ArgumentParser(description="Parses the command line arguments")
parser.add_argument('-launchTest', dest='launchTest', action='store_true', help='provide this to run triage process of test suites')
parser.add_argument('-getStatus', dest='getStatus', action='store_true', help='provide this to run triage process of test suites')
parser.add_argument('-configFile', dest='configFile', required=True, help='provide json config data')
parser.add_argument('-user', dest='user', required=True, action='store', help='provide user name for launching tests on GVS')
parser.add_argument('-date', dest='date' , help='provide date or CL to run tests, date format: MM_DD_YYYY')
parser.add_argument('-cl', dest='cl', help='provide either date or cl to run the tests')
parser.add_argument('-outPutDir', dest='outPutDir', default='/compune-nightly/nightly/{}/GVS-Tegra/', help='provide output directory path to store results')
subparser = parser.add_subparsers(help='sub-command help')
parser_a = subparser.add_parser('testName', help='this to run specific test with testName and test details must be present in argumentConfig.json provide gpu and boardName with this')
parser_a.add_argument('-gpu', action='store', help='provide this to run specific test with testName, testType and test details must be present in argumentConfig.json')
parser_a.add_argument('-boardName', action='store', help='provide this to run specific test with testName, testType, gpu and test details must be present in argumentConfig.json')
arguments = parser.parse_args()
return arguments
def main():
parseArguments()
main()
, 난 파서에 옵션을 추가 할 수 있습니다.
하지만이 코드를 실행하려고하면이 오류를 제공합니다 parser.py를 : 오류 : 너무 적은 인수
python parser.py -configFile=abcd -user=amanj -testName=xyz -gpu=123 -boardName=123
usage: parser.py [-h] [-launchTest] [-getStatus] -configFile CONFIGFILE -user
USER [-date DATE] [-cl CL] [-outPutDir OUTPUTDIR]
{testName} ... parser.py: error: too few arguments
.. –
는 py2에 subparser는 – hpaulj
되어 필요 python에서 대체 솔루션 2.7 –