I think this is doable but as an X vs Y problem. You can either not have a default and check if it's in the namespace later, or make the default value be the previously highest priority value as a run-time defined default. Do either of those work?
shameless copy from https://stackoverflow.com/questions/12151306/argparse-way-to...