Thanks to visit codestin.com
Credit goes to pt.scribd.com

0% acharam este documento útil (0 voto)
8 visualizações2 páginas

Howto Argparse Optparse

O documento discute a migração do módulo optparse para argparse, destacando as vantagens do argparse, como suporte a subcomandos e mensagens de uso mais informativas. Ele fornece orientações específicas para desenvolvedores sobre como realizar a migração, incluindo substituições de métodos e alterações na manipulação de argumentos. O texto também menciona que aplicações satisfeitas com optparse podem continuar a usá-lo, mas devem estar cientes das diferenças de comportamento.

Enviado por

Dortmund game
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
8 visualizações2 páginas

Howto Argparse Optparse

O documento discute a migração do módulo optparse para argparse, destacando as vantagens do argparse, como suporte a subcomandos e mensagens de uso mais informativas. Ele fornece orientações específicas para desenvolvedores sobre como realizar a migração, incluindo substituições de métodos e alterações na manipulação de argumentos. O texto também menciona que aplicações satisfeitas com optparse podem continuar a usá-lo, mas devem estar cientes das diferenças de comportamento.

Enviado por

Dortmund game
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
Você está na página 1/ 2

Migrando código optparse para

argparse
Release 3.13.3

Guido van Rossum and the Python development team

abril 11, 2025


Python Software Foundation
Email: [email protected]

Sumário

O mó dulo argparse oferece vá rios recursos de nível mais alto nã o fornecidos nativamente pelo mó dulo optparse,
incluindo:
• Tratando argumentos posicionais.
• Prover suporte a subcomandos.
• Permitir prefixos alternativos de opçõ es como + e /.
• Manipular argumentos de estilo “zero ou mais” e “um ou mais”.
• Produzir mensagens de uso mais informativas.
• Fornecer uma interface muito mais simples para type e action personalizados.
Originalmente, o mó dulo argparse tentou manter a compatibilidade com optparse. No entanto, as diferenças
fundamentais de design entre suportar o processamento de opçõ es de linha de comando declarativas (enquanto deixa
o processamento de argumentos posicionais para o có digo da aplicaçã o) e suportar opçõ es nomeadas e argumentos
posicionais na interface declarativa significam que a API divergiu daquela de optparse ao longo do tempo.
Conforme descrito em choosing-an-argument-parser, as aplicaçõ es que atualmente usam optparse e estã o satisfei-
tos com a forma como ele funciona podem continuar usando optparse.
Os desenvolvedores de aplicaçõ es que estã o pensando em migrar també m devem revisar a lista de diferenças com-
portamentais intrínsecas descritas nessa seçã o antes de decidir se a migraçã o é desejá vel ou nã o.
Para aplicaçõ es que optam por migrar de optparse para argparse, as seguintes sugestõ es devem ser ú teis:
• Substituir todas as chamadas de optparse.OptionParser.add_option() por chamadas de
ArgumentParser.add_argument().

• Substituir (options, args) = parser.parse_args() por args = parser.parse_args() e adi-


cionar chamadas adicionais a ArgumentParser.add_argument() para os argumentos posicionais. Tenha
em mente que o que anteriormente era chamado de options, agora no contexto do argparse é chamado de
args.

• Substituir optparse.OptionParser.disable_interspersed_args() usando


parse_intermixed_args() em vez de parse_args().

• Substituir açõ es de funçã o de retorno e argumentos nomeados callback_* por argumentos type ou action.

1
• Substituir nomes de strings para argumentos nomeados type pelos objetos de tipo correspondentes (por exem-
plo, int, float, complex, etc).
• Substituir
optparse.Values por Namespace e optparse.OptionError e optparse.
OptionValueError por ArgumentError.
• Substituir strings com argumentos implícitos tal como %default ou %prog pela sintaxe padrã o do Python
para usar dicioná rios para formatar strings, ou seja, %(default)s e %(prog)s.
• Substituir o argumento version do construtor do OptionParser por uma chamada a parser.
add_argument('--version', action='version', version='<the version>').

Você também pode gostar