pydantic models to argparse CLIs
A function is provided to automatically expose fields as command line arguments.
import sys from pydantic import BaseModel from p2a import parse_extra_args_model class MyPluginConfig(BaseModel, validate_assignment=True): extra_arg: bool = False extra_arg_with_value: str = "default" extra_arg_literal: Literal["a", "b", "c"] = "a" model = MyPluginConfig() parse_extra_args_model(model, sys.argv) # > my-cli --extra-arg --extra-arg-with-value "test" --extra-arg-literal bFor integration with existing argparse CLIs, a helper function to create an argparse.SubParser is also provided: p2a.create_model_parser.
Note
This library was generated using copier from the Base Python Project Template repository.