Analisando valores booleanos com argparse

Eu gostaria de usar argparse para analisar argumentos de linha de comando booleanos escritos como "--foo True" ou "--foo False". Por exemplo:

my_program --my_boolean_flag False

No entanto, o código de teste a seguir não faz o que eu gostaria:

import argparse
parser = argparse.ArgumentParser(description="My parser")
parser.add_argument("--my_bool", type=bool)
cmd_line = ["--my_bool", "False"]
parsed_args = parser.parse(cmd_line)

Infelizmente,parsed_args.my_bool avalia paraTrue. Este é o caso mesmo quando eu mudocmd_line ser estar["--my_bool", ""], o que é surpreendente, já quebool("") avalia paraFalse.

Como posso fazer com que o argparse seja analisado?"False", "F"e suas variantes minúsculas a seremFalse?

questionAnswers(13)

yourAnswerToTheQuestion