Tutorial do Python VirtualEnv

Tutorial do Python VirtualEnv

Ao trabalhar em um projeto Python, é recomendável criar um ambiente virtual para o projeto, de modo que você isole os requisitos do projeto do sistema. Além disso, um ambiente virtual é a melhor maneira de separar as dependências quando você tem projetos diferentes que exigem versões diferentes do mesmo pacote.

Este guia oferece um tutorial prático sobre o ambiente virtual do Python. Começaremos entendendo o que é um ambiente virtual do Python, seus benefícios e como criar, ativar e excluir o ambiente virtual do Python.

Entendendo o ambiente virtual do Python

Usar ambientes virtuais é comum ao trabalhar com o desenvolvimento do Python. Um ambiente virtual do Python é um ambiente de desenvolvimento isolado que permite que os desenvolvedores tenham um espaço isolado contendo uma cópia do Python.

No ambiente virtual, você pode instalar outras ferramentas necessárias para um projeto. Além disso, você pode ter vários ambientes virtuais usando versões diferentes do mesmo programa sem afetar os pacotes globais.

Idealmente, um ambiente virtual permite que você trabalhe em várias cópias de Python lado a lado com diferentes programas instalados para vários projetos. Cada ambiente virtual de Python criado contém o intérprete Python e uma pasta para as bibliotecas de terceiros instaladas. Alterações feitas em um ambiente virtual não afetam as dependências de outros ambientes virtuais criados.

Por que usar ambientes virtuais do Python?

Trabalhar em um ambiente virtual garante um espaço de trabalho isolado que não possa afetar os pacotes em todo o sistema. Portanto, você pode ter espaço para desenvolver seus projetos sem afetar outros pacotes ou dependências instalados no sistema.

Além disso, é possível ter vários ambientes virtuais com os mesmos programas instalados, mas executando em diferentes versões. Por exemplo, se o seu projeto exigir Numpy 2.1 e outro requer Numpy 2.0, Você pode instalar a versão específica para cada ambiente virtual. O uso de um ambiente virtual garante que não obtenhamos problemas de compatibilidade, pois o Python não pode ter duas versões de um pacote em execução em um sistema.

Ao trabalhar em um projeto Python, é melhor criar um ambiente virtual e instalar todas as suas dependências necessárias em vez de instalar pacotes globalmente. Dessa forma, você manterá seu sistema limpo e evitará erros de dependência global.

Trabalhando com ambientes virtuais de Python

Discutimos o que é um ambiente virtual do Python e quais benefícios ele oferece. O próximo passo é criar e usar um ambiente virtual python.

O Python oferece duas ferramentas para criar um ambiente virtual, virtualenv e venv. O virtualenv funciona com versões python mais antigas e deve ser instalado no sistema antes que você possa usá -lo. No entanto, o Venv suporta versões mais recentes do Python e vem pré -instalado com Python 3.3 ou mais versões. Então, verifique a versão Python que você está usando para saber qual ferramenta funciona para o seu caso.

Criando um ambiente virtual python

Para este tutorial, estamos usando o Ubuntu 22.04, e está correndo Python3. Então, vamos usar Venv Como uma ferramenta de ambiente virtual. Criaremos uma pasta onde faremos nosso ambiente virtual python. Vamos nomear nossa pasta de projeto Linuxhint.\

Antes de criarmos o ambiente virtual, você deve ter pip instalado. Verifique isso verificando sua versão.

$ PIP -Versão

Se Pip não estiver instalado, instale -o da seguinte forma.

$ sudo apt install python3-pip

Além disso, para os sistemas Debian/Ubuntu, você deve instalar o pacote python3-venv para usá-lo para criar seu ambiente virtual. Se você tentar criar o ambiente virtual sem instalar o pacote, você encontrará este erro.

Então, execute o comando abaixo para instalar o pacote pyuthon3-venv

$ sudo apt install python3.10 Venv

Pressione Y quando solicitado a prosseguir com a instalação.

Agora você está pronto para criar seu ambiente virtual dentro da pasta do projeto usando a ferramenta Venv. Use o comando abaixo e nomeie seu ambiente virtual ao seu gosto. No nosso caso, nomeamos Test1.

$ python3 -m Venv test1

Você notará que uma nova pasta será criada dentro da pasta do projeto, confirmando que nosso ambiente virtual foi criado com sucesso. A pasta criada contém as ferramentas necessárias para o desenvolvimento do Python.

Portanto, agora você tem uma cópia do Python em um ambiente virtual onde você pode instalar os pacotes necessários para o seu projeto.

Ativando o ambiente virtual do Python

Você não pode usar o ambiente virtual criado até ativá -lo. Aqui está a sintaxe para ativar o ambiente virtual.

$ fonte virtualenv-name/bin/ativação

Depois de ativar o ambiente virtual, você observará que o nome aparecerá no início do prompt do terminal. Outra maneira de verificar se o ambiente virtual foi ativado é usando o qual comando para localizar o python no ambiente virtual.

Se o ambiente virtual for ativado, o comando retornará o caminho para o intérprete python criado assim que o ambiente virtual for ativado.

$ qual python

Observe que a versão Python para o seu sistema é a mesma versão disponível no ambiente virtual criado. Verifique a versão Python para verificar. Usamos o Python 3.10.6 Ao criar o ambiente virtual e é a mesma versão disponível no ambiente virtual ativado.

Agora você pode começar a instalar pacotes para o seu desenvolvimento de Python.

Instalando pacotes no ambiente virtual

Em um ambiente virtual de Python recém -criado, apenas PIP e SetupTools Estão disponíveis. Os dois pacotes são instalados por padrão e você pode listar os pacotes disponíveis usando o comando pip.

Você pode usar o comando pip quando quiser mais pacotes. Aqui está a sintaxe para instalar um pacote dentro do ambiente virtual.

$ python3 -m pip install

A sintaxe acima instalará a versão mais recente para o pacote especificado. Vamos procurar este exemplo para instalar Numpy com o comando abaixo.

$ python3 -m pip install numpy

Pip coletará o pacote especificado, baixá -lo e instalará. Depois que a instalação é concluída, você pode listar os pacotes instalados usando o Lista PIP comando para verificar se Numpy está disponível e a versão instalada.

Para este caso, instalamos o Numpy 1.23.5. E se quiséssemos uma versão mais baixa do que 1.2? Nesse caso, você pode especificar a versão específica usando a sintaxe abaixo.

$ python3 -m pip install numpy == 1.20.0

Aqui, estamos especificando a versão exata usando o duplo sinal de igual.

Como alternativa, usando o sinal menos que o sinal com a sintaxe abaixo, você pode especificar o PIP para instalar qualquer versão inferior.

$ python3 -m pip install 'numpy<1.20'

Vamos em frente e ver como conseguir isso, mas primeiro, devemos instalar a versão Numpy instalada. Use o comando abaixo para desinstalá -lo.

$ python3 -m pip desinstala numpy

Imprensa y Para completar a desinstalação. Podemos verificar se Numpy não aparece mais na lista de pacotes instalados.

Uma vez desinstalado, tente instalar uma versão mais baixa.

Na imagem acima, você notará que Pip está instalando Numpy-1.19.5, que é uma versão inferior que 1.20. Esse recurso é útil ao criar um projeto Python que se baseia em versões mais antigas de um determinado pacote. Nesse caso, você pode lidar confortavelmente com o desenvolvimento instalando qualquer versão de um pacote necessário.

Suponha que você quisesse uma versão superior. Nesse caso, use o maior que sinal, conforme ilustrado na sintaxe abaixo.

$ python3 -m pip install 'package -name> versão'

Por exemplo, o exemplo abaixo especifica que queremos o Numpy instalado, mas de uma versão superior que 1.20. Podemos observar na última linha que Pip instalou o Numpy versão 1.23.5, que é o que queríamos.

Ao trabalhar com um ambiente virtual do Python, é melhor especificar a versão exata do pacote que você deseja usar para o projeto especificado. A boa notícia é que você pode ter dois projetos usando o mesmo pacote, mas com uma versão diferente, dependendo do requisito de cada projeto.

Por exemplo, se quiséssemos instalar Pandas versão 1.3.5, Poderíamos usar o comando abaixo.

$ python3 -m pip install pandas == 1.3.5

No exemplo acima, notamos que a instalação de pandas também instalou automaticamente suas dependências. Portanto, se listarmos os pacotes disponíveis, notaremos que instalamos o pacote especificado e sua versão e outras dependências.

Reproduzindo o ambiente virtual

Ao trabalhar com um ambiente virtual do Python, é comum reproduzi -lo quando alguém quer trabalhar no mesmo projeto usando os mesmos pacotes e versões que você instalou. Pode ser que você queira compartilhar seu projeto com alguém e eles devem usar os mesmos pacotes que você usou para o projeto para executar. Nesse caso, primeiro, use o congelar comando para listar todos os pacotes do projeto e versões instaladas.

$ pip congelamento

Nosso objetivo é criar ambientes idênticos com as mesmas dependências. Portanto, devemos exportar a saída acima para um arquivo de texto, de modo que possamos compartilhá -lo com alguém para criar um ambiente idêntico.

Aqui está como exportar as dependências.

$ pip congelamento> idêntico.TXT

Podemos verificar o conteúdo do arquivo de texto criado para garantir que tenhamos as mesmas dependências antes de compartilhá -lo.

Agora, vamos reproduzir o ambiente idêntico na mesma pasta do projeto e ativá -lo.

Para reproduzir o ambiente, instale as dependências usando o arquivo de texto que geramos anteriormente para o outro ambiente virtual. Aqui está como instalar as dependências.

$ pip install -r idêntico.TXT

Pip instalará todos os pacotes nomeados e suas versões.

O último passo é verificar se temos um ambiente virtual idêntico contendo todas as dependências necessárias. Verifique se o uso do comando PIP LIST.

Podemos verificar agora que temos um ambiente virtual idêntico. Observe que o arquivo compartilhado permite que a outra pessoa crie um ambiente virtual idêntico que contenha os pacotes, intérprete Python, etc. No entanto, o código -fonte do projeto não está contido no ambiente virtual, mas na pasta do projeto.

Portanto, se você deseja compartilhar o código -fonte, copie -o da pasta do projeto, não da pasta de ambiente virtual.

Desativando o ambiente virtual

Existem duas opções para desativar um ambiente virtual python. Você pode desativá -lo para acessá -lo mais tarde ou excluir o ambiente virtual sem afetar seu sistema.

Suponha que você queira desativar o ambiente virtual e mudar para usar outro. Use o desativar comando.

$ desativado

Depois de desativar o ambiente virtual, o prompt do terminal retornará à pasta do projeto. Se você preferir excluir o ambiente virtual, você deve excluir sua pasta usando o rm comando.

No exemplo abaixo, excluímos o Demo2 ambiente virtual.

É assim que excluir um ambiente virtual python completamente.

Conclusão

Os ambientes virtuais são úteis quando você deseja trabalhar em diferentes projetos que exigem versões diferentes do mesmo pacote. Tudo o que é necessário é criar um ambiente virtual para cada projeto e instalar suas dependências sem afetar outros ambientes virtuais ou pacotes globais. Este guia discutiu o que é um ambiente virtual do Python, por que você precisa e como criá -lo, ativá -lo e excluir o ambiente virtual. Com isso, você pode implementar o mesmo para seus projetos python.