Scroll to navigation

PYTHON(1) General Commands Manual PYTHON(1)

NOME

python - uma linguagem de programação interpretada, interativa e orientada a objetos

SINOPSE

python [ -B ] [ -b ] [ -d ] [ -E ] [ -h ] [ -i ] [ -I ]
[ -m nome-do-módulo ] [ -q ] [ -R ] [ -O ] [ -OO ] [ -P ] [ -s ] [ -S ] [ -u ]
[ -v ] [ -V ] [ -W argumento ] [ -x ] [ -X opção ] [ -? ]
[ --check-hash-based-pycs default | always | never ]
[ --help ] [ --help-env ] [ --help-xoptions ] [ --help-all ]
[ -c comando | script | - ] [ argumentos ]

DESCRIÇÃO

Python é uma linguagem de programação interpretada, interativa e orientada a objetos que combina um poder notável com uma sintaxe muito clara. Para uma introdução à programação em Python, consulte o Tutorial do Python. A Referência da Biblioteca do Python documenta tipos, constantes, funções e módulos padrão e embutidos. Por fim, o Manual de Referências do Python descreve a sintaxe e a semântica da linguagem principal com detalhes (talvez até demais). (Esses documentos podem ser encontrados em RECURSOS NA INTERNET abaixo; eles também podem estar instalados no seu sistema.)

O poder básico do Python pode ser expandido com seus próprios módulos escritos em C ou C++. Na maioria dos sistemas, esses módulos podem ser carregados dinamicamente. O Python também é adaptável como uma linguagem de extensão para aplicações existentes. Consulte a documentação interna para obter dicas.

A documentação dos módulos e pacotes Python instalados pode ser visualizada executando o programa pydoc.

OPÇÕES DA LINHA DE COMANDOS

Não escreve arquivos .pyc na importação. Veja também PYTHONDONTWRITEBYTECODE.
Emite avisos sobre str(bytes_instance), str(bytearray_instance) e compara bytes/bytearray com str. (-bb: emite erros)
Especifica o comando a ser executado (veja a próxima seção). Isso encerra a lista de opções (as seguintes opções são passadas como argumentos para o comando).
Configura como o Python avalia a atualização dos arquivos .pyc baseados em hash.
Ativa a saída de depuração do analisador (somente para especialistas, dependendo das opções de compilação).
Ignora variáveis ​​de ambiente como PYTHONPATH e PYTHONHOME que modificam o comportamento do interpretador.
Exibe o uso do executável do interpretador e sai.
Exibe ajuda sobre variáveis ​​de ambiente específicas do Python e sai.
Exibe ajuda sobre opções de -X específicas da implementação e sai.
Exibe informações completas de uso e sai.
Quando um script é passado como primeiro argumento ou a opção -c é usada, entra no modo interativo após executar o script ou o comando. O arquivo $PYTHONSTARTUP não é lido. Isso pode ser útil para inspecionar variáveis ​​globais ou um rastreamento de pilha quando um script levanta uma exceção.
Executa o Python em modo isolado. Isso também implica em -E, -P e -s. No modo isolado, sys.path não contém o diretório do script nem o diretório site-packages do usuário. Todas as variáveis ​​de ambiente PYTHON* também são ignoradas. Restrições adicionais podem ser impostas para impedir que o usuário injete código malicioso.
Pesquisa o módulo nomeado em sys.path e executa o arquivo .py correspondente como um script. Isso encerra a lista de opções (as seguintes opções são passadas como argumentos para o módulo).
Remova instruções assert e qualquer código condicional ao valor de __debug__; aumente o nome do arquivo para arquivos compilados (bytecode) adicionando .opt-1 antes da extensão .pyc.
Faz o mesmo de -O e também descarta docstrings; altera o nome do arquivo para arquivos compilados (bytecode) adicionando .opt-2 antes da extensão .pyc.
Não adiciona automaticamente um caminho potencialmente inseguro a sys.path, como o diretório atual, o diretório do script ou uma string vazia. Veja também a variável de ambiente PYTHONSAFEPATH.
Não exibe as mensagens de versão e direitos autorais. Essas mensagens também são suprimidas no modo não interativo.
Ativa a randomização de hash. Esta opção só terá efeito se a variável de ambiente PYTHONHASHSEED estiver definida como 0, já que a randomização de hash está habilitada por padrão.
Não adiciona o diretório do site do usuário ao sys.path.
Desabilita a importação do módulo site e as manipulações dependentes do site de sys.path que ele envolve. Desabilite também essas manipulações se site for importado explicitamente posteriormente.
Força os fluxos stdout e stderr a serem descompactados. Esta opção não tem efeito no fluxo stdin.
Exibe uma mensagem sempre que um módulo é inicializado, mostrando o local (nome do arquivo ou módulo embutido) de onde ele é carregado. Quando especificado duas vezes, exibe uma mensagem para cada arquivo verificado na busca por um módulo. Também fornece informações sobre a limpeza do módulo ao sair.
Exibe o número da versão Python do executável e encerra. Quando fornecido duas vezes, exibe mais informações sobre a construído.

Controle de avisos. O mecanismo de aviso do Python, por padrão, exibe mensagens de aviso em sys.stderr.

As configurações mais simples aplicam uma ação específica incondicionalmente a todos os avisos emitidos por um processo (mesmo aqueles que são ignorados por padrão):


-Wdefault # Avisa uma vez por local de chamada
-Werror # Converte para exceções
-Walways # Avisa toda vez
-Wall # Mesmo que -Walways
-Wmodule # Avisa uma vez por módulo chamador
-Wonce # Avisa uma vez por processo do Python
-Wignore # Nunca avisa

Os nomes das ações podem ser abreviados conforme desejado e o interpretador os resolverá para o nome de ação apropriado. Por exemplo, -Wi é o mesmo que -Wignore.

A forma completa do argumento é: ação:mensagem:categoria:módulo:número-da-linha

Campos vazios correspondem a todos os valores; campos vazios à direita podem ser omitidos. Por exemplo, -W ignore::DeprecationWarning ignora todos os avisos de DeprecationWarning.

O campo ação é como explicado acima, mas só se aplica a avisos que correspondem aos campos restantes.

O campo mensagem deve corresponder a toda a mensagem de aviso impressa; essa correspondência não diferencia maiúsculas de minúsculas.

O campo categoria corresponde à categoria de aviso (ex: "DeprecationWarning"). Deve ser um nome de classe; a correspondência testa se a categoria de aviso real da mensagem é uma subclasse da categoria de aviso especificada.

O campo módulo corresponde ao nome do módulo (totalmente qualificado); essa correspondência diferencia maiúsculas de minúsculas.

O campo número-da-linha corresponde ao número da linha, onde zero corresponde a todos os números de linha e, portanto, equivale a um número de linha omitido.

A opção -W pode ser fornecida várias vezes; quando um aviso corresponde a mais de uma opção, a ação para a última opção correspondente é executada. Opções -W inválidas são ignoradas (embora uma mensagem de aviso seja exibidas sobre opções inválidas quando o primeiro aviso é emitido).

Avisos também podem ser controlados usando a variável de ambiente PYTHONWARNINGS e de dentro de um programa Python usando o módulo warnings. Por exemplo, a função warnings.filterwarnings() pode ser usada para aplicar uma expressão regular na mensagem de aviso.

Define uma opção específica para a implementação. As seguintes opções estão disponíveis:


-X cpu_count=N: substitui o valor de retorno de os.cpu_count();
-X cpu_count=default cancela a substituição; também PYTHON_CPU_COUNT

-X dev: habilita o "modo de desenvolvimento" do CPython, adicionando
verificações adicionais em tempo de execução que são muito caras para
serem habilitadas por padrão. Não será mais verboso que o padrão se o
código estiver correto: novos avisos só serão emitidos quando um
problema for detectado. Efeito do modo de desenvolvedor:
* Adicionar filtro padrão de avisos, como -W default
* Instala ganchos de depuração em alocadores de memória: veja
a função C PyMem_SetupDebugHooks()
* Habilita o módulo faulthandler para obter o traceback Python
em um travamento
* Habilita o modo de depuração de asyncio
* Define o atributo dev_mode de sys.flags para True
* io.IOBase destructor registra exceções de close()


-X importtime: mostra quanto tempo cada importação leva. Mostra o nome
do módulo, o tempo cumulativo (incluindo importações aninhadas) e o
tempo próprio (excluindo importações aninhadas). Observe que sua
saída pode ser interrompida em aplicações multithread. O uso típico
é: python3 -X importtime -c 'import asyncio'


-X faulthandler: habilita faulthandler


-X frozen_modules=[on|off]: se os módulos congelados devem
ou não ser usados.
O padrão é "on" (ou "off" ao fazer uma construção local).


-X gil=[0|1]: habilita (1) ou desabilita (0) a GIL; também
PYTHON_GIL
Só disponível em construções configuradas com --disable-gil.


-X int_max_str_digits=número: limita o tamanho das conversões
int<->str. Isso ajuda a evitar ataques de negação de
serviço ao analisar dados não confiáveis.
O padrão é sys.int_info.default_max_str_digits. 0 desabilita.


-X no_debug_ranges: desabilita a inclusão das tabelas que mapeiam
informações extras de localização (linha final, deslocamento da coluna
inicial e deslocamento da coluna final) para cada instrução em objetos
de código. Isso é útil quando objetos de código menores e arquivos pyc
são desejados, além de suprimir os indicadores visuais extras de
localização quando o interpretador exibe tracebacks.


-X perf: suporte ao perfilador do Linux "perf";
também PYTHONPERFSUPPORT=1


-X perf_jit: suporte ao perfilador do Linux "perf" com suporte
a DWARF; também PYTHON_PERF_JIT_SUPPORT=1


-X presite=MOD: importa este módulo antes de site.
Também PYTHON_PRESITE. Só funciona em construções de depuração.


-X pycache_prefix=PATH: permite erscrever arquivos .pyc em uma
árvore paralela com raiz no diretório fornecido, em vez de na
árvore de código.


-X showrefcount: exibe a contagem total de referências e o número de
blocos de memória usados ​​quando o programa termina ou após cada
instrução no interpretador interativo. Isso só funciona em
construções de depuração.


-X tracemalloc: inicia o rastreamento das alocações de memória do
Python usando o módulo tracemalloc. Por padrão, apenas o quadro
mais recente é armazenado no traceback de um trace.
Use -X tracemalloc=NUM_QUADROS para iniciar o rastreamento com um
limite de quadros de NUM_QUADROS


-X utf8: habilita o modo UTF-8 para interfaces do sistema operacional,
substituindo o modo padrão com reconhecimento de localidade.
-X utf8=0 desabilita explicitamente o modo UTF-8 (mesmo quando,
de outra forma, ele seria ativado automaticamente).
Veja PYTHONUTF8 para mais detalhes.


-X warn_default_encoding: habilita o recurso opcional EncodingWarning
para "encoding=None"

Pula a primeira linha do código-fonte. Isto é destinado apenas a um hack específico para DOS. Aviso: a numeração das linhas nas mensagens de erro estará incorreta em um!

INTERFACE DO INTERPRETADOR

A interface do interpretador assemelha-se à do shell UNIX: quando chamado com uma entrada padrão conectada a um dispositivo tty, ele recebe comandos e os executa até que um EOF seja lido; quando chamado com um argumento de nome de arquivo ou com um arquivo como entrada padrão, ele lê e executa um script desse arquivo; quando chamado com -c comando, ele executa a(s) instrução(ões) Python fornecida(s) como comando. Aqui, comando pode conter várias instruções separadas por quebras de linha. Espaços em branco à esquerda são significativos em instruções Python! No modo não interativo, toda a entrada é analisada antes de ser executada.

Se disponível, o nome do script e os argumentos adicionais subsequentes são passados ​​para o script na variável Python sys.argv, que é uma lista de strings (você deve primeiro usar import sys para poder acessá-la). Se nenhum nome de script for fornecido, sys.argv[0] será uma string vazia; se -c for usado, sys.argv[0] conterá a string '-c'. Observe que as opções interpretadas pelo próprio interpretador Python não são colocadas em sys.argv.

No modo interativo, o prompt principal é ">>>"; o segundo prompt (que aparece quando um comando não está completo) é "...". Os prompts podem ser alterados por atribuição a sys.ps1 ou sys.ps2. O interpretador encerra ao ler um EOF em um prompt. Quando ocorre uma exceção não tratada, um rastreamento de pilha é impresso e o controle retorna ao prompt principal; no modo não interativo, o interpretador encerra após imprimir o rastreamento de pilha. O sinal de interrupção gera a exceção KeyboardInterrupt; outros sinais UNIX não são capturados (exceto que SIGPIPE às vezes é ignorado, em favor da exceção IOError). Mensagens de erro são gravadas em stderr.

ARQUIVOS E DIRETÓRIOS

Estes estão sujeitos a diferenças dependendo das convenções de instalação locais; ${prefix} e ${exec_prefix} dependem da instalação e devem ser interpretados como para software GNU; podem ser os mesmos. No Debian GNU/{Hurd,Linux}, o padrão para ambos é /usr.

${exec_prefix}/bin/python
Local recomendado do interpretador.

${prefix}/lib/python<versão>
${exec_prefix}/lib/python<versão>

Locais recomendados dos diretórios que contêm os módulos padrão.

${prefix}/include/python<versão>
${exec_prefix}/include/python<versão>

Locais recomendados dos diretórios que contêm os arquivos de inclusão necessários para desenvolver extensões Python e incorporar o interpretador.

VARIÁVEIS DE AMBIENTE

Se esta variável de ambiente estiver definida como uma string não vazia, habilita o modo de depuração do módulo asyncio.
Se esta variável for definida como qualquer valor, o interpretador não tentará carregar o REPL baseado em Python que requer curses e readline e, em vez disso, usará o REPL tradicional baseado em analisador.
Se esta variável de ambiente for definida como 0, ela desabilitará o depurador padrão. Ela pode ser definida como o valor chamável do depurador de sua escolha.
Se definido como o valor 0, faz com que o aplicativo de linha de comando Python principal ignore a coerção dos locais C e POSIX baseados em ASCII legados para uma alternativa baseada em UTF-8 mais capaz.
Se esta variável for definida como 1, o interpretador colorirá vários tipos de saída. Definir como 0 desativa esse comportamento.
Se esta variável for definida como um número inteiro positivo, ela substituirá os valores de retorno de os.cpu_count e os.process_cpu_count.
Veja também a opção -X cpu_count.
Se definido como uma string não vazia, equivale a especificar a opção -d. Se definido como um inteiro, equivale a especificar -d várias vezes.
Se esta variável de ambiente for definida, sys.argv[0] será definido como seu valor em vez do valor obtido pelo tempo de execução C. Funciona apenas no Mac OS X.
Se esta variável de ambiente for definida como uma string não vazia, faulthandler.enable() será chamado na inicialização: instala um manipulador para sinais SIGSEGV, SIGFPE, SIGABRT, SIGBUS e SIGILL para despejar o traceback do Python.
Isso equivale à opção -X faulthandler.
Se esta variável for definida como on ou off, ela determinará se os módulos congelados serão ou não ignorados pelo mecanismo de importação. Um valor on significa que eles serão importados e off significa que serão ignorados. O padrão é on para compilações sem depuração (o caso normal) e off para construções de depuração.
Veja também a opção -X frozen_modules.
Se esta variável for definida como 1, a trava global do interpretador (GIL) será forçada a ser ativada. Defini-la como 0 força a GIL a ser desativada. Disponível apenas em construções configuradas com --disable-gil.
Isso equivale à opção -X gil.
Esta variável de ambiente pode ser usada para definir o local de um arquivo de histórico (no Unix, é ~/.python_history por padrão).
Se esta variável for definida, ela desabilitará a inclusão das tabelas que mapeiam informações extras de local (linha final, posição inicial da coluna e posição final da coluna) para cada instrução em objetos de código. Isso é útil quando objetos de código menores e arquivos pyc são desejados, além de suprimir os indicadores visuais extras de local quando o interpretador exibe tracebacks.
Se isso for definido como uma string não vazia, será equivalente a especificar a opção -B (não tente escrever arquivos .pyc).
Se esta variável de ambiente for definida como uma string não vazia, habilita o "modo de desenvolvimento" do Python, introduzindo verificações de tempo de execução adicionais que são muito caras para serem habilitadas por padrão.
Isso equivale à opção -X dev.
Se esta variável for definida como "random", um valor aleatório será usado para semear os hashes dos objetos str e bytes.

Se PYTHONHASHSEED for definido como um valor inteiro, ele será usado como uma semente fixa para gerar o hash() dos tipos abrangidos pela randomização de hash. Sua finalidade é permitir hash repetível, como para autotestes do próprio interpretador, ou permitir que um cluster de processos Python compartilhe valores de hash.

O inteiro deve ser um número decimal no intervalo [0,4294967295]. Especificar o valor 0 desabilitará a randomização de hash.

Altera o local das bibliotecas padrão do Python. Por padrão, as bibliotecas são pesquisadas em ${prefix}/lib/python<versão> e ${exec_prefix}/lib/python<versão>, onde ${prefix} e ${exec_prefix} são diretórios dependentes da instalação, ambos com o padrão /usr/local. Quando $PYTHONHOME é definido como um único diretório, seu valor substitui ${prefix} e ${exec_prefix}. Para especificar valores diferentes para eles, defina $PYTHONHOME como ${prefix}:${exec_prefix}.
Se isso for definido como uma string não vazia, equivale a especificar a opção -i.
Limita o número máximo de caracteres em um valor int ao converter de uma string e ao converter um int de volta para uma string. Um valor 0 desabilita o limite. Conversões de ou para as bases 2, 4, 8, 16 e 32 nunca são limitadas.
Isso equivale à opãço -X int_max_str_digits=NÚMERO.
Se isso for definido antes de executar o interpretador, ele substituirá a codificação usada para stdin/stdout/stderr, na sintaxe nomedacodificação:tratadordeerro. A parte tratadordeerro é opcional e tem o mesmo significado que em str.encode. Para stderr, a parte tratadordeerro é ignorada; o tratador será sempre ´backslashreplace´.
Define os alocadores de memória do Python e/ou instala ganchos de depuração. Os alocadores de memória disponíveis são malloc e pymalloc. Os ganchos de depuração disponíveis são debug, malloc_debug e pymalloc_debug.
Quando o Python é compilado no modo de depuração, o padrão é pymalloc_debug e os ganchos de depuração são usados ​​automaticamente. Caso contrário, o padrão é pymalloc.
Se definido como uma string não vazia, o Python exibirá estatísticas do alocador de memória pymalloc toda vez que um novo objeto pymalloc arena for criado e no desligamento.
Esta variável será ignorada se a variável de ambiente $PYTHONMALLOC for usada para forçar o alocador malloc(3) da biblioteca C, ou se o Python estiver configurado sem suporte a pymalloc.
Se isso for definido como uma string não vazia, será equivalente a especificar a opção -s (Não adiciona o diretório do site do usuário ao sys.path).
Se definido como uma string não vazia, equivale a especificar a opção -O. Se definido como um inteiro, equivale a especificar -O várias vezes.
Aumenta o caminho de pesquisa padrão para arquivos de módulo. O formato é o mesmo do $PATH do shell: um ou mais caminhos de diretório separados por dois pontos. Diretórios inexistentes são ignorados silenciosamente. O caminho de pesquisa padrão depende da instalação, mas geralmente começa com ${prefix}/lib/python<versão> (veja PYTHONHOME acima). O caminho de pesquisa padrão é sempre anexado a $PYTHONPATH. Se um argumento de script for fornecido, o diretório que contém o script será inserido no caminho antes de $PYTHONPATH. O caminho de pesquisa pode ser manipulado de dentro de um programa Python como a variável sys.path.
Se esta variável for definida com um valor diferente de zero, ela habilitará o suporte ao perfilador de desempenho do Linux para que chamadas Python possam ser detectadas por ele usando informações DWARF. Definir como 0 desabilita.
Veja também a opção -X perf_jit.
Se esta variável for definida com um valor diferente de zero, ela habilitará o suporte ao perfilador de desempenho do Linux para que chamadas Python possam ser detectadas por ele. Definir como 0 desabilita.
Veja também a opção -X perf.
Substitui sys.platlibdir.
Se esta variável de ambiente for definida como uma string não vazia, o Python mostrará quanto tempo cada importação leva. Isso equivale exatamente a definir -X importtime na linha de comando.
Se isso for definido, o Python escreverá arquivos .pyc em uma árvore de diretórios espelho neste caminho, em vez de em diretórios __pycache__ dentro da árvore de fontes.
Isso equivale a especificar a opção -X pycache_prefix=PATH.
Se esta opção for definida como uma string não vazia, não adiciona automaticamente um caminho potencialmente inseguro a sys.path, como o diretório atual, o diretório do script ou uma string vazia. Veja também a opção -P.
Se este for o nome de um arquivo legível, os comandos Python contidos nesse arquivo serão executados antes que o primeiro prompt seja exibido no modo interativo. O arquivo é executado no mesmo espaço de nomes em que os comandos interativos são executados, para que os objetos definidos ou importados nele possam ser usados ​​sem qualificação na sessão interativa. Você também pode alterar os prompts sys.ps1 e sys.ps2 neste arquivo.
Se esta variável de ambiente estiver definida como uma string não vazia, comece a rastrear as alocações de memória do Python usando o módulo tracemalloc.
O valor da variável é o número máximo de quadros armazenados em um traceback de um trace. Por exemplo, PYTHONTRACEMALLOC=1 armazena apenas o quadro mais recente.
Se isso for definido como uma string não vazia, será equivalente a especificar a opção -u.
Define o diretório base do usuário, que é usado para calcular o caminho do diretório do usuário site-packages e os caminhos de instalação para python -m pip install --user.
Se definido como 1, habilita o "Modo UTF-8" do Python. Definir como 0 desabilita.
Se definido como uma string não vazia, equivale a especificar a opção -v. Se definido como um inteiro, equivale a especificar -v várias vezes.
Se esta variável de ambiente for definida como uma string não vazia, emite um EncodingWarning quando a codificação padrão específica do local for usada.
Se isso for definido como uma string separada por vírgulas, será equivalente a especificar a opção -W para cada valor separado.

Variáveis do modo de depuração

Definir essas variáveis ​​só tem efeito em uma construção de depuração do Python, ou seja, se o Python foi configurado com a opção de construção --with-pydebug.

Se esta variável de ambiente estiver definida, o Python despejará objetos e contagens de referências ainda ativos após desligar o interpretador.
Se definido, o Python despejará objetos e contagens de referências ainda ativos após desligar o interpretador em um arquivo no caminho fornecido como valor para esta variável de ambiente.
Se esta variável for definida como um módulo, esse módulo será importado no início do ciclo de vida do interpretador, antes da execução do módulo site e antes da criação do módulo __main__. Isso só funciona em construções de depuração.
Isso equivale à opção -X presite=módulo.

AUTOR

A Python Software Foundation: https://www.python.org/psf/

RECURSOS NA INTERNET

Site principal: https://www.python.org/
Documentação: https://docs.python.org/pt-br
Recursos de desenvolvedor: https://devguide.python.org/
Downloads: https://www.python.org/downloads/
Repositório de módulos: https://pypi.org/
Newsgroups: comp.lang.python, comp.lang.python.announce

LICENCIAMENTO

O Python é distribuído sob uma licença de código aberto. Consulte o arquivo "LICENSE" na distribuição do código-fonte do Python para obter informações sobre os termos e condições de acesso e uso do Python, bem como para uma ISENÇÃO DE RESPONSABILIDADE POR TODAS AS GARANTIAS.

TRADUÇÃO

A tradução para português brasileiro desta página man foi criada por Rafael Fontenelle <rafaelff@gnome.org>

Esta tradução é uma documentação livre; leia a Licença Pública Geral GNU Versão 3 ou posterior para as condições de direitos autorais. Nenhuma responsabilidade é aceita.

Se você encontrar algum erro na tradução desta página de manual, envie um e-mail para a lista de discussão de tradutores.