Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

importação de módulo Python

As sintaxe:

from MODULO import *

e

from . import MODULO

Executam a mesma coisa ?

2 respostas
solução!

Olá Maercio, tudo bem com você?

Quando fazermos o uso da sintaxe from <nome_do_módulo> import * estamos informando que deverá ser realizado o importe completo do módulo, esse modo de importação será usado quando temos a necessidade de uso de todas as classes, evitando assim a criação de uma linha de código muito extensa.

Caso tenhamos que utilizar apenas classes específicas de um módulo podemos utilizar a seguinte sintaxe: from <nome_do_módulo> import <nome_da_classe>.

Importando dessa maneira, temos a seguinte sintaxe de criação de um objeto.

from modulo import *
obj = NomeDaClasse()

Já quando utilizamos apenas o ponto após a cláusula from estamos fazendo uma importação informando um caminho para o módulo, em Python será usado o ponto (.), quando informando apenas um ponto (.) estamos informando que o módulo que vamos importar estará dentro da nossa pasta de trabalho, fazendo a importação dessa maneira, a sintaxe de criação de um objeto ficará da seguinte forma:

from . import modulo
obj = modulo.ClasseUm()

Note que nesse tipo de importação primeiramente será necessário declararmos o nome do módulo e logo após chamarmos a classe desse módulo, modulo.ClasseUm().

Os dois modelos de importação apresentados vão importar todas as classes presentes em um módulo, mas possuem uma sintaxe diferente de criação de objetos. O segundo modelo com o uso do ponto irá especificar o local de busca pelo módulo.

Para saber um pouco mais sobre os tipos de importação, recomendo a leitura do seguinte artigo, nele será tratado os prós e contras de cada tipo de importação, irá apresentar como utilizar o ponto (.) para acessar pastas específicas com os módulos.

O artigo acima está em inglês, caso tenha dificuldade com o idioma recomendo o uso do tradutor do navegador.

Fico à disposição em caso de dúvidas.

Abraços e bons estudos.

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

Compreendi, muito obrigado