image

Access unlimited bootcamps and 650+ courses forever

60
%OFF
Article image
Carlos Soares
Carlos Soares29/04/2024 13:30
Share

O que é e como trabalhar com Ambientes Virtuais em Python

  • #Python

O que são Ambientes Virtuais?

Nada mais é do que um ambiente isolado no Python. Sendo assim uma área segura, onde é possível instalar bibliotecas e suas exigências, sem afetar a instalação global do Python ou outros projetos. Essa configuração possibilita o desenvolvimento em projetos distintos com versões diferentes de bibliotecas e até mesmo versões distintas do Python, sem gerar nenhum tipo de conflito. Fazendo uma analogia, é bem parecido com o conceito de máquina virtual, onde é instalado um novo SO dentro de um computador em funcionamento. Sendo este novo SO totalmente independente do sistema operacional que está inserido/instalado.

Para que serve os Ambientes Virtuais em python?

Devido a grande abundância de bibliotecas e constante aprimoramento de versões das linguagens de programação como o exemplo do Python, administração de dependências e harmonização entre as versões da linguagem de programação se tornam um desafio para os programadores.

Vamos supor que há um ano atrás você trabalhava para o ClienteA, codava um programa em python utilizando a versão 3.10 junto da biblioteca Pandas.

E hoje em dia, você está codando o ClienteB, criando um novo aplicativo, porém com a versão mais atualizada do pyhthon 3.12 e com a biblioteca Django.

Se por algum motivo o Cliente antigo ClienteA solicitasse uma manutenção no código dele, você teria dificuldades de faze-las. Pois as versões estariam incompatíveis e você não tem mais a biblioteca Pandas , pois a desinstalou e instalou a biblioteca Django em seu lugar.

É nesse ponto que o Ambiente Virtual resolve o nosso problemas. Criando um ambiente particular, onde você pode manter todo a sua configuração atual que está utilizando, e criar um ambiente virtual para fazer a manutenção ou desenvolvimento de algum código em específico. como no caso citado acima.

image

Por que usar Ambientes Virtuais?

  1. Separação de Necessidades: Cada trabalho pode possuir suas próprias exigências, e um ambiente isolado assegura que essas necessidades não interfiram em outras aplicações.
  2. Possibilidade de Utilização de Diversas Versões: Através de ambientes virtuais, torna-se viável a utilização de distintas versões do Python em projetos individuais. Essa funcionalidade é especialmente valiosa quando se faz necessário manter um projeto antigo que não é compatível com a versão mais atual do Python disponível.
  3. Garantir a replicabilidade do ambiente de desenvolvimento ao compartilhar o código com colegas é fundamental. Utilizar ambientes virtuais é a chave para assegurar que todas as dependências estejam presentes e o ambiente possa ser reproduzido com precisão.
  4. Gestão Facilitada de Pacotes: Através de um ambiente virtual, é possível realizar a instalação de pacotes utilizando o pip (Python Package Installer) sem depender de autorizações de administrador. Essa prática simplifica a administração de pacotes e agiliza o desenvolvimento de projetos.

Como Usar Ambientes Virtuais?

O Python disponibiliza uma biblioteca interna chamada venv para a criação de ambientes virtuais. Abaixo segue um exemplo simples de como criar e ativar e utiliza-lo:

# Criar um ambiente Virtual:
python -m venv meu_ambiente_virtual
# Ativar o Ambiente Virtual:
WINDOWS      -      meu_ambiente_virtual\Scripts\activate
MAC OU LINUX -      source meu_ambiente_virtual/bin/activate
# Desativar o Ambiente Virtual:
deactivate

O ambiente virtual em Python é uma ferramenta essencial para qualquer desenvolvedor Python. Criando um ambiente controlado e isolado para desenvolver projetos de forma eficiente e prática. Garantindo compatibilidade de versões, gerenciamento simplificado de pacotes e reprodutibilidade.

Vamos Disseminar os Conhecimentos e Transbordar Tudo o que Aprendemos!

Segue o Link do meu LinkedIn: https://www.linkedin.com/in/carlos-cgs/

Segue o Link do meu GitHub: https://github.com/Carlos-CGS

Share
Comments (0)