4
respostas

[Dúvida] python-dotenv não está sendo carregado

Ao desativar a venv para instalar o python-dotenv, quando ativo novamente e faço o procedimento do pip freeze > requeriments.txt, o python-dotenv não é carregado no arquivo txt. Como consequência não estou conseguindo importar o load_dotenv. Preciso de ajuda para entender como resolver isso.

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

4 respostas

Olá Luis, tudo bem com você?

Quando você desativa o ambiente virtual e realiza a instalação da biblioteca python-dotenv você está realizando a instalação na versão global do python e não no ambiente virtual. Por esse motivo ao executar o comando pip freeze > requirements.txt com o ambiente virtual ativo a biblioteca não é adicionado ao arquivo requirements.txt já que a mesma não foi instalada no ambiente virtual.

Peço que inicie o ambiente virtual e logo após realize a instalação da biblioteca python-dotenv dentro do ambiente virtual para isso basta seguir os passos abaixo.

  • Inicie o ambiente virtual executando o comando abaixo no terminal aberto na pasta do projeto.
      venv/bin/activate
  • Instale a biblioteca python-dotenv executando o comando abaixo no terminal.
      sudo pip install python-dotenv
  • Crie o arquivo requirements.txt.
      pip freeze > requirements.txt
  • Verifique se a biblioteca python-dotenv foi adicionada ao arquivo requirements.txt

Peço que teste os passos listados acima, fico à disposição em caso de dúvidas.

Espero ter ajudado, abraços e bons estudos.

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!

Eu tinha pensado que era esse o problema, mas estou achando que pode ser o Path de instalação do dotenv:

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Consegui!

usei o python -m pip install python-dotenv. Acho que era Path mesmo :)

Muito obrigado!

Revendo o vídeo a instrução é para que desativemos o venv para instalar o pip. Acredito que isso precise ser corrigido porque foi o que causou o problema aqui.