Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

[feature request] support multiple dialects for boolean parameters

Aberta
#461 3 comentários 0 reações 0 responsáveis Ver no GitHub

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
3/5
Tempo estimado
1-2 dias
Facilidade para iniciantes
38/100
Tipo de issue
Funcionalidade
Clareza
Razoavelmente clara
Status de atividade
Estagnada
Stack de tecnologia
python
Domínio
cli

Direção de pesquisa

Reproduza o comportamento com o exemplo a.py fornecido e, em seguida, rastreie o ponto de entrada da análise de argumentos booleanos do Python Fire. Defina como o comportamento opcional é habilitado e verifique se 0, false e no se tornam False, enquanto as formas existentes continuam funcionando.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

Consider the following code:

import fire

def a(flag: bool):
   if flag: 
      print("hooray!")
   else:
      print("Wanna see a flag :(")

if __name__ == '__main__': fire.Fire(a)

Now, the following options work as expected (print 'hooray!'):
python a.py --flag
python a.py --flag=True
python a.py --flag=true

However, in order to disable flag explicity the only working option is:
python a.py --flag=False
and the seemingly rational version
python a.py --flag=false
result in 'hooray' being printed as flag is parsed as a string 'false' which then casts to boolean True.

My request:
support 0, 'false' and 'no' as valid boolean arguments that all cast to False. Make this behavior optional. One way to do this is by adding a custom type to lable such flags with.

Linguagem predominante
Python
Estrelas
28.2k
Forks
1.5k
Métricas de merge de PRs
Nenhum PR com merge em 30d

Guia de contribuição

Abrir o guia de contribuição

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de google/python-fire

Todas as issues de google/python-fire

Issues semelhantes

Mais issues de Python

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.