Tengo una estructura de directorios como esta
project/ __init__.py greetings.py script.pysaludos.py
def hello(): print('Hello')guión.py
from . import greetings greetings.hello() Cuando ejecuto python script.py ocurre el siguiente error
Traceback (most recent call last): File "script.py", line 1, in <module> from . import greetings ImportError: cannot import name 'greetings' Si solo uso import greetings en script.py , todo funciona. Pero, ¿por qué la importación relativa da error? ¿Y por qué funciona cuando uso from . import models en vistas mientras se trabaja en django.
Siga el concepto Módulo vs Paquete en python.
Aquí creó un paquete, por lo que debe importar el paquete como: -
from project import greetingsAquí la importación relativa funcionará como
from .greetings import *O
import greetings los greetings deben estar en la misma carpeta