Variáveis de Ambiente no Python – O que São e Como Usá-las?

Hoje, eu quero te mostrar o que são as variáveis de ambiente no Python e como elas podem te ajudar na sua programação!

Variáveis de ambiente no Python são valores guardados fora do código — no sistema operacional ou em um arquivo .env — usados para manter dados sensíveis (senhas, chaves de API, URLs de banco) longe do código-fonte. Você as acessa com o módulo os (os.environ, os.getenv) e carrega o arquivo .env com load_dotenv(), da biblioteca python-dotenv.

Caso prefira esse conteúdo no formato de vídeo-aula, assista aos vídeos abaixo ou acesse o nosso canal do YouTube!

O que você aprende neste vídeo

Resposta rápida: Variável de ambiente é um valor que vive no ambiente, não no código, por isso serve para chave de API e senha: o código pode ser compartilhado sem levar o segredo junto. No Python o acesso é os.environ["NOME"]; quem usa Jupyter (que não tem tela de configuração) guarda os valores num arquivo .env e carrega com load_dotenv().

Neste vídeo (17 min):

  • 1:00 - Variável comum guarda um valor para reaproveitar; a de ambiente é específica da máquina onde o código roda.
  • 2:00 - Por isso é o lugar natural de configuração: seu computador, o do colega e o servidor podem ter valores diferentes.
  • 2:30 - O ganho de segurança: a chave fica no ambiente, e o código compartilhado nunca a expõe.
  • 3:00 - O acesso é pela biblioteca os, print(os.environ) devolve um dicionário com tudo que já existe.
  • 4:00 - Já vêm de fábrica variáveis do sistema como USERNAME, USERPROFILE e WINDIR.
  • 5:00 - No PyCharm: seta ao lado do arquivo → Editar configurações → campo de variáveis de ambiente → adicionar.
  • 6:00 - Depois de adicionadas, elas aparecem no os.environ junto com as do sistema.
  • 7:00 - No código: usuario = os.environ["USUARIO"], o nome entre colchetes é o mesmo cadastrado no ambiente.
  • 8:00 - Quem recebe o código precisa cadastrar as próprias variáveis, nada do seu vai junto.
  • 9:00 - O Jupyter não tem essa tela: o notebook nasce para ser compartilhado inteiro.
  • 10:00 - A alternativa é um arquivo .env em texto, com NOME=valor por linha, salvo com “Todos os arquivos” e nome apenas .env.
  • 11:00 - Instale com pip install python-dotenv e use from dotenv import load_dotenv + load_dotenv() no início.
  • 12:00 - Depois disso o os.environ passa a enxergar também o que estava no arquivo.
  • 14:00 - Exemplo real: a chave da API de resolução de captcha sai do código e vira os.environ["CHAVE_API"].

Para receber por e-mail o(s) arquivo(s) utilizados na aula, preencha:

Para receber por e-mail o(s) arquivo(s) utilizados na aula, preencha:

O Que São Variáveis de Ambiente no Python

Você já conhece as variáveis de ambiente e sabe como elas podem te auxiliar na sua programação?

Hoje, vou te mostrar como usar variáveis de ambiente no Python para que você tenha mais uma maneira de utilizar algumas informações sem ter que mostrá-las diretamente no seu código principal.

Vou te ensinar como usar a biblioteca dotenv junto com a biblioteca os, para que, dessa forma, você possa utilizar as variáveis de ambiente dentro do seu código Python.

As variáveis de ambiente e o gerenciamento delas com a biblioteca dotenv são uma forma muito eficiente e prática de atualizar as informações do seu código e transmitir dados entre sistemas.

Como Usar Variáveis de Ambiente no Python

Como o próprio nome já diz, as variáveis de ambiente são um tipo de variável que existe apenas naquele ambiente, ou seja, uma variável de ambiente criada no seu computador não estará disponível no computador de outra pessoa.

Isso é muito utilizado em servidores ou até mesmo quando você tem alguma chave ou token que não quer compartilhar e mostrar para qualquer pessoa.

Por exemplo, quando você tem uma chave de API ou alguma outra chave de segurança que não pode ser compartilhada, você pode declarar essa chave como uma variável de ambiente.

Assim, você pode compartilhar o seu código normalmente com outras pessoas sem que elas consigam visualizar essas informações.

Além disso, as variáveis de ambiente nos permitem editar configurações sem precisar reimplementar e reescrever o código (hard code), facilitando e agilizando os processos de mudanças e atualizações.

Um exemplo clássico é o link do banco de dados, que pode mudar dependendo do servidor ou local onde está hospedado.

Visualizando e Adicionando Variáveis de Ambiente – Biblioteca os

Diversos editores de código nos permitem criar e configurar variáveis de ambiente, como o PyCharm, VS Code, entre outros.

Utilizando a biblioteca os, podemos executar o comando print(os.environ) e visualizar todas as variáveis de ambiente que já existem no computador.

Python
import os

print(os.environ)
Visualizando as variáveis de ambiente do seu computador

Além disso, é possível adicionar uma variável de ambiente de diferentes formas.

Dentro do PyCharm, você pode acessar OutrasIDEs, depois ir em Edit Configurations e clicar em Environment variables.

Opção para editar configurações
Variáveis de ambiente do PyCharm
Variáveis de ambiente do seu computador

Você vai notar que há diversas variáveis padrão do seu computador, e é aqui que você pode adicionar as suas variáveis de ambiente específicas.

Nessa janela, você pode tanto visualizar as variáveis de ambiente que já existem no seu computador quanto clicar no ícone de mais (+) para adicionar novas variáveis.

Um exemplo é criar uma variável de usuário e senha, lembrando que vamos utilizar um usuário e senha fictícios para demonstração.

Python
import os
usuario = os.environ['usuario']
senha = os.environ['senha']

print(usuario, senha)
Testando as variáveis de ambiente no ambiente local

Repare que o comando os.environ + o nome da variável permite trazer e exibir os valores das variáveis criadas dentro do seu código Python.

Mas isso só vai funcionar no seu ambiente, pois foi aqui que você adicionou essas variáveis. Portanto, dentro do seu código isso funcionará normalmente.

Ícone PythonPython Impressionador

Você vai aprender a linguagem de Programação que mais cresce no Mundo para fazer automações incríveis, desenvolver sites, fazer análises de dados, trabalhar com Ciência de Dados, Inteligência Artificial, mesmo que você nunca tenha tido nenhum contato com Programação na vida.

Começar agoraSeta para a direita
Fundo PythonTelas Python
Luz Python

Porém, caso você compartilhe o código com outra pessoa, ela não conseguirá visualizar o conteúdo dessas variáveis.

Outra opção para criar e adicionar suas próprias variáveis é através de um arquivo .env. Esse arquivo permite armazenar e adicionar suas próprias variáveis de ambiente.

Você pode criá-lo diretamente dentro do seu editor de código ou utilizando um arquivo de texto.

Python
nome="lira"
senha="naoéaminhasenha"
Informações das variáveis no bloco de notas

Esse arquivo deve ficar salvo dentro da mesma pasta onde está o arquivo com o seu código, conforme mostrado no material disponível para download.

Biblioteca Python dotenv

Para poder ler esse arquivo .env e manipular as variáveis de ambiente criadas dentro dele, você precisará instalar a biblioteca python-dotenv.

pip install python-dotenv

Instalando dotenv

Feita a instalação, para utilizá-la basta importar a biblioteca dotenv para dentro do código.

No entanto, ao invés de importar toda a biblioteca, é mais comum e recomendado que você importe apenas a função load_dotenv().

A função load_dotenv() te permitirá buscar automaticamente pelo arquivo .env e ler as variáveis de ambiente definidas dentro dele.

Python
from dotenv import load_dotenv

load_dotenv()

import os

print(os.environ["nome"])
print(os.environ["senha"])
função load_dotenv()

Depois de carregar a função load_dotenv(), podemos utilizar a biblioteca os para acessar os valores das variáveis de ambiente.

Valores de Variáveis de Ambiente

As variáveis de ambiente são sensíveis a maiúsculas e minúsculas, o que significa que “usuario” e “USUARIO” são consideradas variáveis diferentes.

Alterar o valor de uma variável de ambiente não requer edição do código. Os valores podem ser gerenciados diretamente dentro do arquivo .env.

Valores de Variáveis de Ambiente

Isso é extremamente útil porque, durante o processo de deploy, quando fazemos uma alteração no código principal, o sistema precisa sair do ar para ser atualizado corretamente.

Já ao alterar o valor de uma variável de ambiente, na maioria dos sistemas disponíveis para deploy como Amazon, Heroku, entre outros, você possui um acesso facilitado e simples para atualizar as variáveis de ambiente, sem precisar tirar seu sistema do ar.

Como Funcionam os Valores das Variáveis de Ambiente

Todos os valores que atribuímos a uma variável de ambiente dentro do arquivo .env podem ser declarados de forma direta. Não é necessário usar chaves para criar uma variável nem declarar seu valor entre aspas.

Se considerarmos as variáveis de ambiente abaixo:

Python
USUARIO=admin
EMAIL=${USUARIO}@email.com

DEBUG=False
PORT=8000
TIMEOUT=30
DATABASE_URL="postgres://user:${USUARIO}@localhost:${PORT}/mydatabase"
DATABASE_URL_FIXO='postgres://user:${USUARIO}@localhost:${PORT}/mydatabase'

E acessarmos o tipo de uma delas dentro do nosso código Python, veremos que elas são tratadas como strings, mesmo que representem um número ou valores booleanos.

Python
from dotenv import load_dotenv

import os

load_dotenv()

print(os.getenv("DEBUG"))
print(type(os.getenv("DEBUG")))
Tipo de variável de ambiente

Para que essa variável seja de fato tratada como uma booleana, precisamos utilizar a função eval() do Python.

Python
from dotenv import load_dotenv

import os

load_dotenv()

print(os.getenv("DEBUG"))
print(type(os.getenv("DEBUG")))

debug = eval(os.getenv("DEBUG"))

print(debug)
print(type(debug))
Variável após função eval

Uso de Variáveis nas Variáveis de Ambiente

Uma outra funcionalidade interessante dentro das variáveis de ambiente é o uso de variáveis dentro delas.

Por exemplo, a variável de ambiente EMAIL depende da variável USUARIO para ser definida.

Para utilizar uma variável dentro das variáveis de ambiente, basta utilizá-la entre chaves e com um cifrão na frente.

Python
USUARIO=admin

EMAIL=${USUARIO}@email.com

Dessa forma, os arquivos .env entenderão que essa é uma variável que deve ser substituída pelo valor da variável que foi declarada anteriormente.

Usando Aspas nas Variáveis de Ambiente

Embora não seja necessário usar aspas para variáveis simples, quando trabalhamos com links ou textos com espaços/caracteres especiais, as aspas são necessárias para delimitar corretamente o valor da variável dentro do arquivo .env.

Python
DATABASE_URL="postgres://user:${USUARIO}@localhost:${PORT}/mydatabase"

DATABASE_URL_FIXO='postgres://user:${USUARIO}@localhost:${PORT}/mydatabase'

As aspas funcionam como delimitadores para definir claramente o início e fim do valor da variável. Todas as variáveis podem ser colocadas entre aspas sem problemas.

No entanto, para textos multilinhas ou com caracteres especiais, o uso das aspas é fundamental e evita confusões com comandos dentro do arquivo .env.

Além disso, observe que podemos utilizar aspas simples e duplas. A diferença principal entre elas é que as aspas duplas interpretam caracteres especiais como \n, enquanto as aspas simples tratam tudo como texto cru.

Você pode conferir mais informações sobre a biblioteca dotenv acessando a documentação oficial:

Perguntas frequentes

1. Como criar um arquivo .env no Python?

Crie um arquivo de texto chamado .env na mesma pasta do seu código e escreva cada variável no formato NOME=valor, uma por linha, sem espaços ao redor do sinal de igual. Não é preciso usar aspas em valores simples; elas só são necessárias para textos com espaços, links ou caracteres especiais.

2. Qual a diferença entre os.environ e os.getenv?

Ambos leem variáveis de ambiente pela biblioteca os. O os.environ['NOME'] retorna o valor, mas gera um erro (KeyError) se a variável não existir. Já o os.getenv('NOME') retorna None (ou um padrão que você definir) quando a variável não existe, sendo mais seguro para valores opcionais.

3. Variáveis de ambiente no Python são texto ou número?

Toda variável de ambiente é lida como string, mesmo que represente um número ou um booleano. Por isso, um valor como DEBUG=False chega como o texto 'False'. Para convertê-lo no tipo correto, use funções como int() ou float(), e trate booleanos com uma comparação explícita em vez de confiar no valor bruto.

4. Quais as vantagens de usar variáveis de ambiente?

Elas mantêm senhas, tokens e chaves de API fora do código-fonte, então você pode compartilhar ou versionar o projeto sem expor dados sensíveis. Também permitem alterar configurações (como a URL do banco) sem editar o código — em servidores como AWS ou Heroku, dá para atualizar a variável sem tirar o sistema do ar.

Conclusão – Variáveis de Ambiente no Python – O que São e Como Usá-las?

Nessa aula, eu te mostrei o que é uma variável de ambiente no Python e como você pode utilizá-la no código para colocar informações importantes sem que outras pessoas possam ver.

Agora você sabe para que servem as variáveis de ambiente no Python e como utilizá-las para colocar informações que não quer mostrar e ainda poder compartilhar seu código normalmente.

Dessa forma, suas informações confidenciais não ficam à mostra e você não precisa se preocupar em lembrar de tirar uma informação, pois às vezes isso acaba acontecendo e não é isso que você quer!

Isso é muito importante para não mostrar senhas ou chaves de APIs que são importantes e não podem ser compartilhadas. Assim, você pode criar seus códigos e compartilhá-los sem se preocupar com que os outros vejam suas informações!

Para se aprofundar ainda mais no uso do Python e suas aplicações, recomendo o curso de Python completo e online da Hashtag Treinamentos, que irá expandir seus conhecimentos e ajudá-lo a dominar a linguagem!

Hashtag Treinamentos

Para acessar outras publicações de Python, clique aqui!


Quer aprender mais sobre Python com um minicurso básico gratuito?

Posts mais recentes da Hashtag Treinamentos