Δημοσιεύτηκε: 28 Ιαν 2012, 15:06
Ηλία, ανέβασε αν θες zip-αρισμένο το folder structure που χρησιμοποιείς για να ξέρουμε γιατί μιλάμε.
Χρησιμοποιώντας το structure του Guido, λογικά στα moduleX, moduleY, moduleZ, moduleA πρέπει να βάλεις "from __future__ import absolute_imports". Μετά όταν κανεις import μέσα από ένα module του πακέτου ένα άλλο πακέτο, θα χρησιμοποιείς relative imports. Τα παραδείγματα του Guido δηλαδή θα τρέχουν. Προσοχή όμως. Δεν μπορείς να πας να τρέξεις απευθείας το moduleX πχ. Θα πρέπει να πας έξω από το πακέτο και να δώσεις from package.subpackage1 import moduleX.
Τα relative imports παίζουν μόνο εντός ενός package και τα πακέτα τα χρησιμοποιείς μόνο κάνοντάς τα import από άλλα scripts. Κάτι τέτοιο έχω καταλάβει εγώ τουλάχιστον.
Χρησιμοποιώντας το structure του Guido, λογικά στα moduleX, moduleY, moduleZ, moduleA πρέπει να βάλεις "from __future__ import absolute_imports". Μετά όταν κανεις import μέσα από ένα module του πακέτου ένα άλλο πακέτο, θα χρησιμοποιείς relative imports. Τα παραδείγματα του Guido δηλαδή θα τρέχουν. Προσοχή όμως. Δεν μπορείς να πας να τρέξεις απευθείας το moduleX πχ. Θα πρέπει να πας έξω από το πακέτο και να δώσεις from package.subpackage1 import moduleX.
Τα relative imports παίζουν μόνο εντός ενός package και τα πακέτα τα χρησιμοποιείς μόνο κάνοντάς τα import από άλλα scripts. Κάτι τέτοιο έχω καταλάβει εγώ τουλάχιστον.