當前位置: 首頁>>代碼示例>>Python>>正文


Python argparse.ArgumentTypeError方法代碼示例

本文整理匯總了Python中argparse.ArgumentTypeError方法的典型用法代碼示例。如果您正苦於以下問題:Python argparse.ArgumentTypeError方法的具體用法?Python argparse.ArgumentTypeError怎麽用?Python argparse.ArgumentTypeError使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在argparse的用法示例。


在下文中一共展示了argparse.ArgumentTypeError方法的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。

示例1: add_submit_files_arg

# 需要導入模塊: import argparse [as 別名]
# 或者: from argparse import ArgumentTypeError [as 別名]
def add_submit_files_arg(self):
        def validate_path(path):
            files = [path]
            if os.path.exists(path) is False:
                raise argparse.ArgumentTypeError('No such file or directory: \'{}\''.format(path))

            if os.path.isdir(path):
                if path.startswith('/') is True:  # Given path is absolute
                    abs_path = path
                else:
                    abs_path = '/'.join(os.path.dirname(os.path.realpath(__file__)).split('/')[:-2] + [path])

                files = list(filter(lambda path: os.path.isfile(path), ['{}/{}'.format(abs_path, x) for x in os.listdir(path)]))

            return files

        self.parser.add_argument('file', type=validate_path, help='File to submit (when directory given, all files from it will be submitted - non recursively)')

        return self 
開發者ID:PayloadSecurity,項目名稱:VxAPI,代碼行數:21,代碼來源:default_cli_arguments.py

示例2: add_search_term_av_detect_opt

# 需要導入模塊: import argparse [as 別名]
# 或者: from argparse import ArgumentTypeError [as 別名]
def add_search_term_av_detect_opt(self):
        def type_av_detect(value):
            if value.find('-'):
                values = value.split('-')
            else:
                values = [value]

            for iter_value in values:
                forced_int_value = int(iter_value)
                if forced_int_value < 0 or forced_int_value > 100:
                    raise argparse.ArgumentTypeError('{} is not a value between {} and {}'.format(iter_value, 0, 100))

            return value

        self.parser.add_argument('--av-detect', type=type_av_detect, help='AV Multiscan range e.g. 50-70 (min 0, max 100)')

        return self 
開發者ID:PayloadSecurity,項目名稱:VxAPI,代碼行數:19,代碼來源:search_cli_arguments.py

示例3: comma_separated_integers_or_file

# 需要導入模塊: import argparse [as 別名]
# 或者: from argparse import ArgumentTypeError [as 別名]
def comma_separated_integers_or_file(cls, string):
        """
        Allow a list of comma-separated integers, or a file containing a
        newline-separated list of integers, OR "-" which implies standard out.
        """

        if re.match(r"^((\d+,?)+)$", string):
            return cls.comma_separated_integers()(string)

        f = sys.stdin
        if not string == "-":
            if not os.path.exists(string):
                raise argparse.ArgumentTypeError("Cannot find file: {}".format(
                    string
                ))
            f = open(string)

        try:
            return [int(_) for _ in f.readlines()]
        except ValueError:
            raise argparse.ArgumentTypeError(
                "The contents of the file presented does not conform to input "
                "standards.  Please ensure that every line in the file "
                "consists of a single integer."
            ) 
開發者ID:RIPE-NCC,項目名稱:ripe-atlas-tools,代碼行數:27,代碼來源:validators.py

示例4: __call__

# 需要導入模塊: import argparse [as 別名]
# 或者: from argparse import ArgumentTypeError [as 別名]
def __call__(self, string):

            message = "The integer must be between {} and {}.".format(
                self.minimum, self.maximum)
            if self.maximum == float("inf"):
                message = "The integer must be greater than {}.".format(
                    self.minimum)

            try:
                integer = int(string)
                if integer < self.minimum or integer > self.maximum:
                    raise argparse.ArgumentTypeError(message)
            except ValueError:
                raise argparse.ArgumentTypeError(
                    "An integer must be specified."
                )

            return integer 
開發者ID:RIPE-NCC,項目名稱:ripe-atlas-tools,代碼行數:20,代碼來源:validators.py

示例5: test_comma_separated_integers

# 需要導入模塊: import argparse [as 別名]
# 或者: from argparse import ArgumentTypeError [as 別名]
def test_comma_separated_integers(self):

        self.assertEqual(
            [1, 2, 3], ArgumentType.comma_separated_integers()("1,2,3"))

        self.assertEqual(
            [1, 2, 3], ArgumentType.comma_separated_integers()("1, 2, 3"))

        self.assertEqual([1], ArgumentType.comma_separated_integers()("1"))

        with self.assertRaises(argparse.ArgumentTypeError):
            ArgumentType.comma_separated_integers()("1,2,3,pizza!")
        with self.assertRaises(argparse.ArgumentTypeError):
            ArgumentType.comma_separated_integers(minimum=5)("4,5,6,7")
        with self.assertRaises(argparse.ArgumentTypeError):
            ArgumentType.comma_separated_integers(maximum=5)("1,2,3,4,6") 
開發者ID:RIPE-NCC,項目名稱:ripe-atlas-tools,代碼行數:18,代碼來源:validators.py

示例6: test_datetime

# 需要導入模塊: import argparse [as 別名]
# 或者: from argparse import ArgumentTypeError [as 別名]
def test_datetime(self):

        d = datetime.datetime(2015, 12, 1)

        self.assertEqual(d, ArgumentType.datetime("2015-12-1"))
        self.assertEqual(d, ArgumentType.datetime("2015-12-1T00"))
        self.assertEqual(d, ArgumentType.datetime("2015-12-1T00:00"))
        self.assertEqual(d, ArgumentType.datetime("2015-12-1T00:00:00"))
        self.assertEqual(d, ArgumentType.datetime("2015-12-1"))
        self.assertEqual(d, ArgumentType.datetime("2015-12-1 00"))
        self.assertEqual(d, ArgumentType.datetime("2015-12-1 00:00"))
        self.assertEqual(d, ArgumentType.datetime("2015-12-1 00:00:00"))

        with self.assertRaises(argparse.ArgumentTypeError):
            ArgumentType.datetime("yesterday")

        with self.assertRaises(argparse.ArgumentTypeError):
            ArgumentType.datetime("Definitely not a date, or even a time") 
開發者ID:RIPE-NCC,項目名稱:ripe-atlas-tools,代碼行數:20,代碼來源:validators.py

示例7: test_measurement_alias

# 需要導入模塊: import argparse [as 別名]
# 或者: from argparse import ArgumentTypeError [as 別名]
def test_measurement_alias(self):

        tests = ["", "\\invalid", "+invalid",
                 ":invalid", "12345"]
        for test in tests:
            with self.assertRaises(argparse.ArgumentTypeError):
                ArgumentType.alias_is_valid(test)

        tests = ["valid", "123valid", "valid123", "_valid",
                 "valid_", "-valid", "valid-", ".valid"]

        for test in tests:
            self.assertEqual(
                ArgumentType.alias_is_valid(test),
                test
            ) 
開發者ID:RIPE-NCC,項目名稱:ripe-atlas-tools,代碼行數:18,代碼來源:validators.py

示例8: cli_skip_missing_interpreter

# 需要導入模塊: import argparse [as 別名]
# 或者: from argparse import ArgumentTypeError [as 別名]
def cli_skip_missing_interpreter(parser):
    class SkipMissingInterpreterAction(argparse.Action):
        def __call__(self, parser, namespace, values, option_string=None):
            value = "true" if values is None else values
            if value not in ("config", "true", "false"):
                raise argparse.ArgumentTypeError("value must be config, true or false")
            setattr(namespace, self.dest, value)

    parser.add_argument(
        "-s",
        "--skip-missing-interpreters",
        default="config",
        metavar="val",
        nargs="?",
        action=SkipMissingInterpreterAction,
        help="don't fail tests for missing interpreters: {config,true,false} choice",
    ) 
開發者ID:tox-dev,項目名稱:tox,代碼行數:19,代碼來源:__init__.py

示例9: role_index

# 需要導入模塊: import argparse [as 別名]
# 或者: from argparse import ArgumentTypeError [as 別名]
def role_index(string):
    role = string
    index = None

    if string.find("-") != -1:
        role_tokens = role.split("-")
        role = role_tokens[0]
        index = role_tokens[1]

    if role not in ROLES.keys():
        raise argparse.ArgumentTypeError(
            "{} is not a valid role; choices are {}".format(
                role, str(
                    ROLES.keys())))

    if index and not index.isdigit():
        raise argparse.ArgumentTypeError(
            "{} is not a valid role index; it must be a number".format(index))

    return RoleIndex(role, index) 
開發者ID:dsp-jetpack,項目名稱:JetPack,代碼行數:22,代碼來源:assign_role.py

示例10: portNumber

# 需要導入模塊: import argparse [as 別名]
# 或者: from argparse import ArgumentTypeError [as 別名]
def portNumber(string):
    value = int(string)
    if 0 <= value <= 65535:
        return value
    raise argparse.ArgumentTypeError("port must be an integer between 0-65535; got '{}'' instead".format(string)) 
開發者ID:svviz,項目名稱:svviz,代碼行數:7,代碼來源:commandline.py

示例11: converterOptions

# 需要導入模塊: import argparse [as 別名]
# 或者: from argparse import ArgumentTypeError [as 別名]
def converterOptions(value):
    value = value.lower()
    options = ["auto", "librsvg", "webkittopdf", "inkscape", "rsvg-convert"]
    if value in options:
        return value
    raise argparse.ArgumentTypeError("converter must be one of '{}'; got '{}'' instead".format(",".join(options), value)) 
開發者ID:svviz,項目名稱:svviz,代碼行數:8,代碼來源:commandline.py

示例12: custom_bool

# 需要導入模塊: import argparse [as 別名]
# 或者: from argparse import ArgumentTypeError [as 別名]
def custom_bool(val):
        if isinstance(val, bool):
            return val
        if val.lower() in ('yes', 'true', 't', 'y', '1'):
            return True
        elif val.lower() in ('no', 'false', 'f', 'n', '0'):
            return False
        else:
            from argparse import ArgumentTypeError
            raise ArgumentTypeError('Boolean value expected.') 
開發者ID:godotengine,項目名稱:godot-mono-builds,代碼行數:12,代碼來源:cmd_utils.py

示例13: restricted_float

# 需要導入模塊: import argparse [as 別名]
# 或者: from argparse import ArgumentTypeError [as 別名]
def restricted_float(x, inter):
    x = float(x)
    if x < inter[0] or x > inter[1]:
        raise argparse.ArgumentTypeError("%r not in range [1e-5, 1e-4]"%(x,))
    return x

# Argument parser 
開發者ID:priba,項目名稱:nmp_qc,代碼行數:9,代碼來源:demo_grec_intnet.py

示例14: make_file_extension_assertion

# 需要導入模塊: import argparse [as 別名]
# 或者: from argparse import ArgumentTypeError [as 別名]
def make_file_extension_assertion(extension):
    """Function factory for file extension argparse assertion
        Args:
            extension (string): the file extension to assert

        Returns:
            string: the supplied extension, if assertion is successful.

    """
    def file_extension_assertion(file_path):
        base, ext = os.path.splitext(file_path)
        if ext.lower() != extension:
            raise argparse.ArgumentTypeError('File must have ' + extension + ' extension')
        return file_path
    return file_extension_assertion 
開發者ID:awslabs,項目名稱:dynamic-training-with-apache-mxnet-on-aws,代碼行數:17,代碼來源:image_segmentaion.py

示例15: model_class

# 需要導入模塊: import argparse [as 別名]
# 或者: from argparse import ArgumentTypeError [as 別名]
def model_class(class_name):
    if class_name not in models.__all__:
        raise argparse.ArgumentTypeError("Invalid model {}; choices: {}".format(
            class_name, models.__all__))
    return getattr(models, class_name) 
開發者ID:ehsanik,項目名稱:dogTorch,代碼行數:7,代碼來源:main.py


注:本文中的argparse.ArgumentTypeError方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。