Compartilhar via


Trabalhar com a janela interativa do Python no Visual Studio

O Visual Studio fornece uma janela interativa de REPL (loop de leitura-avaliação-impressão) para cada um dos ambientes do Python, o que melhora o REPL obtido com o comando python.exe na linha de comando. A janela interativa Python permite inserir código Python arbitrário e ver resultados imediatos. Essa abordagem de codificação ajuda você a aprender e experimentar APIs e bibliotecas e desenvolver interativamente o código de trabalho para incluir em seus projetos.

Captura de tela da janela REPL (read-evaluate-print loop) interativa do Python no Visual Studio 2022.

Captura de tela da janela REPL (read-evaluate-print loop) interativa do Python no Visual Studio.

O Visual Studio tem muitos modos REPL do Python para escolher:

REPL Descrição Edição Depuração Imagens
Padrão O REPL padrão conversa diretamente com o Python Edição padrão (várias linhas e muito mais) Sim, por meio de $attach Não
Depurar REPL padrão, que se comunica com o processo depurado do Python Edição padrão Somente depuração Não
IPython REPL se comunica com o back-end do IPython Comandos do IPython, funcionalidades do Pylab Não Sim, embutido no REPL
IPython sem Pylab O REPL se comunica com o back-end do IPython. IPython padrão Não Sim, janela separada

Este artigo descreve os modos REPL Padrão e de Depuração. Para obter detalhes sobre os modos do IPython, confira Usar o REPL do IPython.

Para obter um passo a passo detalhado com exemplos, incluindo as interações com o editor, como Ctrl+Enter, consulte Utilize a janela interativa REPL.

Pré-requisitos

Não há suporte para o Visual Studio para Mac. Para obter mais informações, consulte O que está acontecendo com o Visual Studio para Mac? Visual Studio Code no Windows, Mac e Linux funciona bem com o Python por meio de extensões disponíveis.

Abrir a janela interativa

Há várias maneiras de abrir a Janela Interativa para um ambiente de Python.

  • Na janela Ambientes de Python:

    1. Selecione Exibir>Outras Janelas>Ambientes de Python para abrir a janela Ambientes de Python (ou use o teclado Ctrl+K>Ctrl+`).

    2. Na janela Ambientes de Python, selecione um ambiente e mude para a página Visão Geral do ambiente.

    3. Na página visão geral, selecione a opção Abrir Janela Interativa.

    Captura de tela que mostra como usar a opção Abrir Janela Interativa para o ambiente selecionado no Visual Studio 2022.

    Captura de tela que mostra como usar a opção Abrir Janela Interativa para o ambiente selecionado no Visual Studio.

  • No menu Exibir na ferramenta do Visual Studio, selecione Outras Janelas>Janela Interativa de Python:

    Captura de tela que mostra como usar a opção de menu Exibir Janela Interativa do Python no Visual Studio 2022.

    Captura de tela que mostra como usar a opção de menu Exibir Janela Interativa do Python no Visual Studio.

  • No menu Depurar na barra de ferramentas do Visual Studio, selecione Executar <Projeto | Arquivo> no Python Interativo ou use o atalho de teclado Shift+Alt+F5. Você pode abrir uma Janela Interativa para o Arquivo de Inicialização no projeto ou em qualquer arquivo independente:

    Captura de tela que mostra como usar a opção de menu

    Captura de tela que mostra como usar a opção Depurar e Executar Projeto na opção de menu Python Interativo no Visual Studio.

Outra opção é enviar o código que você está escrevendo no editor do Visual Studio para a Janela Interativa . Essa abordagem é descrita em Enviar código para a janela interativa.

Explorar as opções da Janela Interativa

Você pode controlar vários aspectos da Janela Interativa , como a localização dos arquivos de script de inicialização e como as teclas de seta funcionam no ambiente da janela. Para acessar as opções, selecione Ferramentas>Opções>Python>Windows Interativo:

Captura de tela das opções do Windows Interativo do Python no Visual Studio.

As opções estão detalhadamente descritas em Python Interactive Window options for Visual Studio.

Usar a janela interativa

Na janela Interativa , você pode começar a inserir o código linha por linha no prompt de comando do REPL Python >>>. À medida que você insere cada linha, o Visual Studio executa o código, incluindo a importação de módulos necessários e a definição de variáveis.

Quando o Visual Studio detecta que uma linha de código não forma uma instrução completa, o prompt de comando é alterado para a continuação REPL .... Esse prompt indica que você precisa inserir mais linhas de código para concluir o bloco de instrução. O Visual Studio aguarda a sintaxe de fechamento antes de tentar executar o bloco de código.

Quando você define uma instrução for, a primeira linha de código inicia o bloco for e termina em dois-pontos. O bloco pode consistir em uma ou mais linhas de código que definem as tarefas a serem concluídas durante o loop for. Quando você pressiona Enter em uma linha em branco, a Janela Interativa fecha o bloco e o Visual Studio executa o código.

Comparação de REPL da linha de comando

A Janela Interativa é uma melhoria da experiência comum do REPL da linha de comando do Python, recuando automaticamente as instruções que pertencem a um escopo ao redor. Ambas as abordagens permitem que você use as teclas de direção para rolar pelo código inserido. A Janela Interativa também fornece itens de várias linhas, enquanto o REPL da linha de comando fornece apenas linhas únicas.

Metacomandos

A Janela Interativa dá suporte a vários metacomandos. Todos os metadados começam com o símbolo de dólar $. Você pode inserir $help para ver uma lista de metadados e $help <command> para obter detalhes de uso de um comando específico. A tabela a seguir resume os metacomandos.

Metacomando Descrição
$$ Insira um comentário, que é útil para comentar o código durante toda a sessão.
$cls, $clear Limpe o conteúdo da janela do editor, mas deixe o histórico e o contexto de execução intactos.
$help Exibir uma lista de comandos ou ajuda em um comando específico.
$load Carregue comandos do arquivo e execute até concluir.
$mod Alterne o escopo atual para o nome do módulo especificado.
$reset Redefina o ambiente de execução para o estado inicial, mas mantenha o histórico.
$wait Aguarde pelo menos o número especificado de milissegundos.

Você também pode estender os comandos com extensões do Visual Studio implementando e exportando a classe IInteractiveWindowCommand. Para obter mais informações, examine um (exemplo no GitHub).

Alternar o escopo da Janela Interativa

Por padrão, a Janela Interativa para um projeto tem como escopo o Arquivo de Inicialização do projeto, como se você executasse o arquivo de aplicativo no prompt de comando. Para um arquivo autônomo, o escopo é definido para esse arquivo. A qualquer momento durante a sessão de REPL, você pode usar a lista suspensa Escopo do módulo para alterar o escopo:

Captura de tela mostrando como usar o menu suspenso Escopo do Módulo para alterar o escopo na Janela Interativa no Visual Studio 2022.

Captura de tela mostrando como usar o menu suspenso Escopo do Módulo para alterar o escopo na Janela Interativa.

Após você importar um módulo, como import importlib, opções aparecem no menu suspenso Escopo do Módulo para alternar para qualquer um dos escopos nesse módulo. Uma mensagem na janela interativa relata a alteração para o novo escopo, para que você possa acompanhar como chegou a um determinado estado durante a sessão examinando o histórico de comandos.

Se você inserir o comando dir() em um escopo, o Visual Studio exibirá identificadores válidos nesse escopo, incluindo nomes de função, classes e variáveis. A imagem a seguir mostra o resultado do comando dir() para o escopo importlib:

Captura de tela que mostra a saída na Janela Interativa para o escopo importlib no Visual Studio 2022.

Captura de tela que mostra a saída na Janela Interativa para o escopo importlib.

Enviar código para a Janela Interativa

Além de trabalhar diretamente na janela Interativa, você pode enviar código no editor do Visual Studio para a janela. Esse comando é útil para o desenvolvimento de código iterativo ou evolutivo, incluindo testar seu código à medida que você o desenvolve.

  1. Abra um arquivo de código no editor do Visual Studio e selecione alguns ou todos os códigos.

  2. Clique com o botão direito do mouse no código selecionado e selecione Enviar para o Interativo (ou use o atalho de teclado Ctrl+E, E).

    Captura de tela que mostra como usar a opção de menu Enviar para Interativo no Visual Studio 2022.

    Captura de tela que mostra como usar a opção de menu Enviar para Interativo no Visual Studio.

Modificar e executar código

Depois de enviar o código para o da Janela Interativa e exibir a saída, você pode modificar o código e testar as alterações. Use as setas para cima e para baixo para rolar até o código no histórico de comandos da janela. Modifique o código e execute o código atualizado selecionando Ctrl+Enter.

Ao fazer alterações, se você selecionar Enter no final de uma instrução de código completa, o Visual Studio executará o código. Se a instrução de código não estiver concluída, o Visual Studio inserirá uma nova linha na janela.

Salvar código e remover prompts

Depois de concluir seu trabalho no código, você pode selecionar o código atualizado no da Janela Interativa e cole-o novamente no arquivo de projeto para salvar seu trabalho.

Quando você cola código da Janela Interativa no editor, o Visual Studio remove o prompt de comando REPL >>> e o prompt de continuação ... por padrão. Esse comportamento permite que você transfira facilmente o código da janela para o editor.

Você pode alterar o comportamento com a opção Colar remove prompts de REPL para a Janela Interativa:

  1. Selecione Ferramentas>Opções para abrir a caixa de diálogo Opções.

  2. Expanda a seção Editor de Texto>Python>Formatação.

  3. Desmarque a opção Colar remove prompts de REPL.

  1. Selecione Ferramentas>Opções para abrir a caixa de diálogo Opções.

  2. Expanda a seção Editor de Texto>Python>Avançado.

  3. Desmarque a opção Colar remove prompts de REPL.

Quando você desmarca a opção, os caracteres do prompt são mantidos no código colado da janela. Para obter mais informações, consulte opções de – opções diversas.

Examinar o comportamento do IntelliSense

A Janela Interativa inclui sugestões do IntelliSense com base nos objetos dinâmicos, diferente do editor de código, em que o IntelliSense se baseia apenas na análise de código-fonte. Como resultado, as sugestões do IntelliSense na janela interativa estão mais corretas, especialmente com código gerado dinamicamente. A desvantagem é que funções com efeitos colaterais, como mensagens de log, podem afetar sua experiência de desenvolvimento.

Você pode ajustar o comportamento do Intellisense por meio das opções de Conclusão:

  1. Selecione Ferramentas>Opções para abrir a caixa de diálogo Opções.

  2. Expanda a seção Python>Janelas Interativas.

  3. Ajuste as configurações no grupo Modo de Conclusão, como Nunca avaliar expressões ou Ocultar sugestões de análise estática.

Para obter mais informações, consulte opções de – opções interativas do Windows.