web-dev-qa-db-fra.com

Python "from [dot] package import ..."

En parcourant un Django tutoriel, j’ai vu la syntaxe suivante:

from .models import Recipe, Ingredient, Instruction

Quelqu'un peut-il expliquer comment fonctionne le .models/ce qu'il fait exactement? D'habitude j'ai:

from myapp.models import

Comment cela fonctionne-t-il sans la partie myapp devant .models?

66
wobbily_col

Doublon possible: Que signifie un. Dans une instruction d'importation dans Python signifie?

Le . est un raccourci qui lui dit de rechercher dans le package actuel avant le reste de la PYTHONPATH. Donc, si un module du même nom Recipe existe quelque part dans votre PYTHONPATH, il ne sera pas chargé.

85
Sudeep Juvekar

En plus de Sudeep Juvekar, cette question est également liée au comportement de manage.py.

Dans Django-admin.py et manage.py :

Il place le paquet de votre projet sur sys.path.

1
Zulu