Olá Hugo, tudo bem com você?
O erro de sintaxe apresentado no momento da importação das funções da biblioteca pathlib
está sendo levantado devido não ter sido utilizado uma vírgula (,
) para separar a função Path
da função os
. Quando estamos importando módulos no Python e desejamos realizar múltiplas funções devemos seguir a seguinte sintaxe.
from nome_da_biblioteca import funcao_1, funcao_2, funcao_3
Para realizar a correção, peço que acesse o arquivo settings.py e modifique a importação das funções Path
e os
deixando como apresentado abaixo.
from pathlib import Path, os
Após realizar a mudança descrita acima, basta salvar o arquivo settings.py e dar continuidade na aula Variáveis de ambiente a partir do minuto 3:50.
Gostaria de aproveitar a oportunidade e deixar uma dica sobre o uso do comando sudo
. Ele é um comando exclusivo para sistemas Linux e Mac, caso esteja utilizando o sistema operacional Windows ele não será reconhecido, gerando o erro: O termo 'sudo' não é reconhecido como nome de cmdlet, função, arquivo de script ou programa operável.
Para instalar bibliotecas no sistema windows, basta utilizar o comando pip install nome-da-biblioteca
, exemplo:
pip install python-dotenv
Não hesite em voltar ao fórum para continuar aprendendo e interagindo com a comunidade.
Espero ter ajudado. Em caso de dúvidas estou à disposição.
Abraços e bons estudos!
Boa noite. No pycharm não funciona?
Boa noite grande ivan!
O problema que está acontecendo na realidade é que o "os" não faz parte do pathlib, sendo assim, é preciso importar diretamente o os.
import os
Perdão corrigí-lo, grande @felippe_rafael
Olá Rafael, tudo bem com você?
Não precisa pedir desculpas, sua contribuição é de extrema importância para evoluirmos juntos. Da forma mencionada por você, importando o módulo os
separadamente como mostro abaixo, realmente o erro de referência deixará de ocorrer.
from pathlib import Path
import os
No entanto, vale ressaltar que na aula Variáveis de ambiente, no minuto 3:50, o instrutor importa estas bibliotecas em conjunto (from pathlib import Path, os
) e isso é permitido porque como a biblioteca pathlib
tem em seu código interno a importação do módulo os
, io
, functools
, re
e vários outros, então, indiretamente ela passa a possuir estes módulos, por isto não foi apontado erro na aula e o código executou sem maiores problemas. No Pycharm, apesar do erro de referência ocorrer, o código também funcionará sem maiores problemas. No VSCode por exemplo o erro sequer seria mostrado.
Novamente, agradeço pela sua contribuição. Continue ajudando a evoluir nossa comunidade do fórum da Alura.
Grande abraço!
Olá tudo em paz! realmente o pathlib possui uma conexão com o "os" e o importa internamente, mas acredito que não seja a melhor prática. No VSCode apesar de não reportar erro, a importação é funcional mas perde-se a funcionalidade das extensões como o pylance, ou seja não é reconhecido corretamente.
Obrigado pela explicação fellipe !