Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Os aplicativos Python normalmente são definidos usando apenas pastas e arquivos. Essa estrutura pode se tornar complexa à medida que os aplicativos crescem e talvez envolvam arquivos gerados automaticamente, JavaScript para aplicativos Web e assim por diante. Um projeto do Visual Studio pode ajudá-lo a gerenciar a complexidade. O projeto (um .pyproj arquivo) identifica todos os arquivos de origem e conteúdo associados ao seu projeto. Ele contém informações de build para cada arquivo, mantém as informações a serem integradas aos sistemas de controle do código-fonte e ajuda você a organizar seu aplicativo em componentes lógicos.
Os projetos são sempre gerenciados em uma solução do Visual Studio. Uma solução pode conter vários projetos que podem fazer referência uns aos outros, como um projeto python que faz referência a um projeto C++ que implementa um módulo de extensão. Com essa relação, o Visual Studio cria automaticamente o projeto de C++ (se necessário) quando você começa a depurar o projeto Python. Para obter mais informações, consulte Soluções e projetos no Visual Studio.
O Visual Studio fornece vários modelos de projeto do Python para criar rapidamente vários tipos de estruturas de aplicativos. Você pode escolher um modelo para criar um projeto em uma árvore de pastas existente ou criar um projeto limpo e vazio. Para obter uma lista de modelos disponíveis, consulte a tabela na seção Modelos do Project .
Dicas para trabalhar com projetos do Python
Você não precisa usar projetos para executar o código Python no Visual Studio, mas há benefícios em fazer isso. Ao começar, examine as considerações a seguir sobre como trabalhar com projetos e Python.
No Visual Studio 2019 e posterior, você pode abrir uma pasta com código Python e executar o código sem criar arquivos de projeto e solução do Visual Studio.
As etapas guiadas para essa abordagem estão disponíveis no Início Rápido: Abrir e executar código Python em um artigo de pasta.
Você não precisa de um projeto para executar o código Python no Visual Studio. Todas as versões do Visual Studio funcionam bem com código Python.
Você pode abrir um arquivo Python sozinho e acessar imediatamente os recursos de preenchimento automático, IntelliSense e depuração. No entanto, há algumas possíveis desvantagens em trabalhar com o código sem um projeto:
- Como o código sempre usa o ambiente global padrão, você poderá ver conclusões ou erros incorretos se o código for destinado a um ambiente diferente.
- O Visual Studio analisa todos os arquivos e pacotes na pasta da qual o único arquivo é aberto. Esse processo pode consumir um tempo considerável de CPU.
Você pode criar um projeto do Visual Studio com base no código existente. Essa abordagem é descrita na seção Criar um projeto a partir de arquivos existentes .
Tarefas básicas do projeto: arquivos, ambientes e inicialização
Ao usar projetos com seu código Python, você conclui tarefas básicas, incluindo adicionar arquivos, atribuir um arquivo de inicialização e definir o ambiente do interpretador do Python.
À medida que você desenvolve seu aplicativo, normalmente você precisa adicionar novos arquivos de diferentes tipos ao seu projeto. É fácil adicionar mais arquivos. Clique com o botão direito do mouse no projeto, selecione Adicionar>Item Existente e navegue até encontrar o tipo de arquivo a ser adicionado. A opção Adicionar>Novo Item abre uma caixa de diálogo que mostra modelos de item que você pode usar para criar o novo arquivo. As opções incluem arquivos Python vazios, uma classe Python, um teste de unidade e vários arquivos relacionados a aplicativos Web. Você pode explorar as opções de modelo com um projeto de teste para saber o que está disponível em sua versão do Visual Studio. Para obter mais informações, consulte a referência de modelos de item .
Cada projeto do Python tem um arquivo de inicialização atribuído, que é mostrado em negrito no Gerenciador de Soluções. O arquivo de inicialização é executado quando você começa a depuração (selecionando F5 ou Depurar>Iniciar Depuração) ou quando você executa seu projeto na janela Interativa . Você pode abrir essa janela com o atalho de teclado Shift + Alt + F5 ou selecionando Depurar>Executar Projeto no Python Interativo. Para alterar o arquivo de inicialização, clique com o botão direito do mouse no arquivo para usar e selecione Definir como Item de Inicialização (ou Definir como Arquivo de Inicialização em versões mais antigas do Visual Studio).
Se você remover o arquivo de inicialização selecionado de um projeto e não selecionar um arquivo alternativo, o Visual Studio não saberá qual arquivo python usar para iniciar o projeto. Nesse caso, o Visual Studio 2017 versão 15.6 e posterior mostra um erro. Versões anteriores abrem uma janela de saída com o interpretador do Python em execução ou a janela de saída é aberta e, em seguida, fecha imediatamente. Se você encontrar qualquer um desses comportamentos, verifique se você tem um arquivo de inicialização atribuído.
Dica
Para manter a janela de saída aberta, clique com o botão direito do mouse em seu projeto e selecione Propriedades. Na caixa de diálogo, selecione a guia Depurar e adicione o -i sinalizador ao campo Argumentos do Interpretador . Esse argumento faz com que o interpretador entre no modo interativo após a conclusão de um programa. A janela permanece aberta até você fechá-la, como usando o atalho de teclado Ctrl+E+Enter.
Um novo projeto sempre está associado ao ambiente global padrão do Python. Para associar o projeto a um ambiente diferente (incluindo ambientes virtuais), clique com o botão direito do mouse no nó Ambientes do Python no projeto. Selecione Adicionar Ambiente e selecione os ambientes desejados. Você também pode usar o menu suspenso de ambientes na barra de ferramentas para selecionar ou adicionar outro ambiente ao projeto.
Para alterar o ambiente ativo, clique com o botão direito do mouse no ambiente desejado no Gerenciador de Soluções e selecione Ativar Ambiente , conforme mostrado na imagem a seguir. Para obter mais informações, consulte Selecionar um ambiente para um projeto.
Modelos de projeto
O Visual Studio oferece várias maneiras de configurar um projeto do Python, do zero ou do código existente. Para usar um modelo, selecione Arquivo>Novo>Projeto ou clique com o botão direito do mouse na solução no Gerenciador de Soluções e selecione Adicionar>Novo Projeto. Na caixa de diálogo novo projeto, você pode ver modelos específicos do Python pesquisando em Python ou selecionando o nó de >Python:.
Os modelos a seguir estão disponíveis no Visual Studio versão 2022.
| Template | Description |
|---|---|
| Do código Python existente | Cria um projeto do Visual Studio com base no código Python existente em uma estrutura de pastas. |
| Aplicativo Python | Fornece uma estrutura de projeto básica para um novo aplicativo Python com um único arquivo de origem vazio. Por padrão, o projeto é executado no interpretador de console do ambiente global padrão. Você pode alterar a atribuição de um ambiente diferente. |
| Projetos Web | Projetos para aplicativos Web com base em várias estruturas, incluindo Bottle, Django e Flask. |
| Aplicativo em segundo plano (IoT) | Dá suporte à implantação de projetos do Python para execução como serviços em segundo plano em dispositivos. Para obter mais informações, consulte o Centro de Desenvolvimento do Windows IoT. |
| Módulo de extensão do Python | Esse modelo será exibido no Visual C++ se você instalar as ferramentas de desenvolvimento nativas do Python com a carga de trabalho do Python no Visual Studio 2017 ou posterior (consulte Instalação). O modelo fornece a estrutura principal para uma DLL de extensão C++, semelhante à estrutura descrita em Criar uma extensão C++ para Python. |
Os modelos a seguir estão disponíveis no Visual Studio versão 2019. Nem todos os modelos disponíveis na versão 2019 estão disponíveis em versões anteriores do Visual Studio.
| Template | Description |
|---|---|
| Do código Python existente | Cria um projeto do Visual Studio com base no código Python existente em uma estrutura de pastas. |
| Aplicativo Python | Fornece uma estrutura de projeto básica para um novo aplicativo Python com um único arquivo de origem vazio. Por padrão, o projeto é executado no interpretador de console do ambiente global padrão. Você pode alterar a atribuição de um ambiente diferente. |
| Projetos Web | Projetos para aplicativos Web com base em várias estruturas, incluindo Bottle, Django e Flask. |
| Aplicativo em segundo plano (IoT) | Dá suporte à implantação de projetos do Python para execução como serviços em segundo plano em dispositivos. Para obter mais informações, consulte o Centro de Desenvolvimento do Windows IoT. |
| Módulo de extensão do Python | Esse modelo será exibido no Visual C++ se você instalar as ferramentas de desenvolvimento nativas do Python com a carga de trabalho do Python no Visual Studio 2017 ou posterior (consulte Instalação). O modelo fornece a estrutura principal para uma DLL de extensão C++, semelhante à estrutura descrita em Criar uma extensão C++ para Python. |
| Aplicativo IronPython | Usa o IronPython por padrão e habilita a interoperabilidade do .NET e a depuração de modo misto com idiomas do .NET. Esse modelo é semelhante ao modelo de aplicativo Python. |
| Aplicativo IronPython WPF | Fornece uma estrutura de projeto usando o IronPython com arquivos XAML do Windows Presentation Foundation para a interface do usuário do aplicativo. O Visual Studio fornece um designer de interface do usuário XAML, o code-behind pode ser escrito em Python e o aplicativo é executado sem exibir um console. |
| Página da Web do IronPython Silverlight | Cria um projeto IronPython que é executado em um navegador usando o Silverlight. O código python do aplicativo está incluído na página da Web como script. Uma tag de script de modelo puxa o código JavaScript para inicializar o IronPython executando no Silverlight, a partir do qual o seu código Python pode interagir com o DOM. |
| Aplicativo IronPython do Windows Forms | Cria uma estrutura de projeto com IronPython e interface do usuário criadas usando código com o Windows Forms. O aplicativo é executado sem exibir um console. |
Observação
Como o Python é uma linguagem interpretada, os projetos do Python no Visual Studio não produzem um executável autônomo como outros projetos de linguagem compilados, como C#. Para obter mais informações, consulte perguntas e respostas.
Criar um projeto com base em arquivos existentes
Siga estas etapas para criar um projeto a partir de arquivos existentes.
Importante
O processo a seguir não move nem copia nenhum arquivo de origem original. Se você quiser trabalhar com uma cópia de seus arquivos, primeiro duplique a pasta e, em seguida, crie o projeto.
Inicie o Visual Studio e selecione Arquivo>Novo>Projeto.
Na caixa de diálogo Criar um novo projeto , pesquise python e selecione o modelo de código python existente e selecione Avançar.
Na caixa de diálogo Configurar seu novo projeto , insira um nome e local do projeto, escolha a solução para conter o projeto e selecione Criar.
No assistente Criar Novo Projeto do Código Python Existente , defina o caminho da pasta para o código existente, defina um Filtro para tipos de arquivo e especifique os caminhos de pesquisa necessários para o projeto e selecione Avançar. Se você não souber os caminhos de pesquisa, deixe o campo em branco.
Na próxima página, selecione o arquivo de inicialização do projeto. O Visual Studio seleciona o interpretador e a versão globais padrão do Python. Você pode alterar o ambiente usando o menu suspenso. Quando estiver pronto, selecione Próximo.
Observação
A caixa de diálogo mostra apenas arquivos na pasta raiz. Se o arquivo desejado estiver em uma subpasta, deixe o arquivo de inicialização em branco. Você pode definir o arquivo de inicialização no Gerenciador de Soluções, conforme descrito em uma etapa posterior.
Selecione o local para armazenar o arquivo de projeto (um arquivo .pyproj no disco). Se aplicável, você também pode incluir a autodetização de ambientes virtuais e personalizar o projeto para estruturas da Web diferentes. Se você não tiver certeza dessas opções, deixe os campos definidos como padrões.
Selecione Concluir.
O Visual Studio cria o projeto e o abre no Gerenciador de Soluções. Se você quiser mover o arquivo .pyproj para um local diferente, selecione o arquivo no Gerenciador de Soluções e selecione Salvar Arquivo>como na barra de ferramentas. Essa ação atualiza as referências de arquivo no projeto, mas não move nenhum arquivo de código.
Para definir um arquivo de inicialização diferente, localize o arquivo no Gerenciador de Soluções, clique com o botão direito do mouse no arquivo e selecione Definir como Arquivo de Inicialização.
Ficheiros ligados
Arquivos vinculados são arquivos que são trazidos para um projeto, mas normalmente residem fora das pastas de projeto do aplicativo. Esses arquivos aparecem no Gerenciador de Soluções como arquivos normais com um ícone de atalho sobreposto:
Os arquivos vinculados são especificados no .pyproj arquivo usando o <Compile Include="..."> elemento. Os arquivos vinculados serão implícitos se usarem um caminho relativo fora da estrutura de diretório. Se os arquivos usarem caminhos no Gerenciador de Soluções, os arquivos vinculados serão explícitos. O exemplo a seguir mostra arquivos explicitamente vinculados:
<Compile Include="..\test2.py">
<Link>MyProject\test2.py</Link>
</Compile>
Os arquivos vinculados são ignorados nas seguintes condições:
- O arquivo vinculado contém
Linkmetadados e o caminho especificado noIncludeatributo reside no diretório do projeto. - O arquivo vinculado duplica um arquivo que existe dentro da hierarquia do projeto.
- O arquivo vinculado contém
Linkmetadados e oLinkcaminho é um caminho relativo fora da hierarquia do projeto. - O caminho do link está enraizado.
Trabalhar com arquivos vinculados
Para adicionar um item existente como um link, clique com o botão direito do mouse na pasta no projeto em que você deseja adicionar o arquivo e selecione Adicionar>Item Existente. Na caixa de diálogo, selecione um arquivo e, em seguida, selecione Adicionar>como Link. Se não houver arquivos conflitantes, esse comando criará um link na pasta selecionada. No entanto, o link não será adicionado se houver um arquivo existente com o mesmo nome ou um link para esse arquivo já existir no projeto.
Se você tentar vincular a um arquivo que já existe nas pastas do projeto, o arquivo será adicionado como um arquivo normal e não como um link. Para converter um arquivo em um link, selecione Salvar> arquivocomo para salvar o arquivo em um local fora da hierarquia do projeto. O Visual Studio converte automaticamente o arquivo em um link. Da mesma forma, um link pode ser convertido novamente usando o Arquivo>Salvar como para salvar o arquivo em algum lugar dentro da hierarquia do projeto.
Se você mover um arquivo vinculado no Gerenciador de Soluções, o link será movido, mas o arquivo real não será afetado. Da mesma forma, excluir um link remove o link sem afetar o arquivo.
Arquivos vinculados não podem ser renomeados.
Referências
Os projetos do Visual Studio dão suporte à adição de referências a projetos e extensões, que aparecem no nó Referências no Gerenciador de Soluções:
As referências de extensão normalmente indicam dependências entre projetos e são usadas para fornecer o IntelliSense em tempo de desenvolvimento ou vinculação em tempo de compilação. Os projetos Python usam referências de maneira semelhante, mas devido à natureza dinâmica do Python, elas são principalmente usadas em tempo de desenvolvimento para fornecer um IntelliSense (recurso de sugestão de código) aprimorado. Eles também podem ser usados para implantação no Microsoft Azure para instalar outras dependências.
Trabalhar com módulos de extensão
Uma referência a um .pyd arquivo habilita o IntelliSense para o módulo gerado. O Visual Studio carrega o .pyd arquivo no interpretador do Python e introspecta seus tipos e funções. O Visual Studio também tenta analisar as cadeias de caracteres do documento para que as funções forneçam ajuda de assinatura.
Se a qualquer momento o módulo de extensão for atualizado em disco, o Visual Studio analisará novamente o módulo em segundo plano. Essa ação não tem efeito sobre o comportamento em tempo de execução, mas algumas conclusões não estão disponíveis até que a análise seja concluída.
Talvez você também precise adicionar um caminho de pesquisa à pasta que contém o módulo.
Trabalhar com projetos do .NET
Ao trabalhar com o IronPython, você pode adicionar referências a assemblies .NET para habilitar o IntelliSense. Para projetos do .NET em sua solução, clique com o botão direito do mouse no nó Referências em seu projeto python e selecione Adicionar Referência. Na caixa de diálogo, selecione a guia Projetos e navegue até o projeto desejado. Para DLLs baixadas separadamente, selecione a guia Procurar e navegue até a DLL desejada.
Como as referências no IronPython não estão disponíveis até depois de uma chamada ao método clr.AddReference('<AssemblyName>'), você também precisa adicionar uma chamada de método clr.AddReference apropriada ao assembly. Essa chamada normalmente é adicionada no início do código. Por exemplo, o código criado pelo modelo de projeto do IronPython Windows Forms Application (disponível no Visual Studio 2019) no Visual Studio inclui duas chamadas na parte superior do arquivo:
import clr
clr.AddReference('System.Drawing')
clr.AddReference('System.Windows.Forms')
from System.Drawing import *
from System.Windows.Forms import *
# Other code omitted
Trabalhar com projetos de WebPI
Você pode adicionar referências a entradas de produto do Web Platform Installer (WebPI) para implantação em Serviços de Nuvem do Microsoft Azure, onde é possível instalar mais componentes através do feed do WebPI. Por padrão, o feed exibido é específico do Python e inclui Django, CPython e outros componentes principais. Você também pode selecionar seu próprio feed, conforme mostrado na imagem a seguir. Quando você publica no Microsoft Azure, uma tarefa de instalação instala todos os produtos referenciados.
Importante
Os projetos de WebPI não estão disponíveis no Visual Studio 2017 ou no Visual Studio 2019.