Python fejl "ImportError: No module named"
Python er installeret i en lokal mappe.
Mit mappetræ ser således ud:
(local directory)/site-packages/toolkit/interface.py
Min kode er her:
(local directory)/site-packages/toolkit/examples/mountain.py
For at køre eksemplet skriver jeg python mountain.py
, og i koden har jeg:
from toolkit.interface import interface
Og jeg får fejlen:
Traceback (most recent call last):
File "mountain.py", line 28, in ?
from toolkit.interface import interface
ImportError: No module named toolkit.interface
Jeg har allerede kontrolleret sys.path
, og der har jeg mappen /site-packages
. Jeg har også filen __init__.py.bin
i mappen toolkit for at angive over for Python, at dette er en pakke. Jeg har også en __init__.py.bin
i mappen examples.
Jeg ved ikke, hvorfor Python ikke kan finde filen, når den ligger i sys.path
. Nogen ideer? Kan det være et problem med tilladelser? Har jeg brug for en eller anden eksekveringstilladelse?
409
3
På baggrund af dine kommentarer til orip's indlæg gætter jeg på, at det er det, der er sket:
__init____.py
på windows.__init__.py
(nu kaldet__init__.py.bin
) betyder at python ikke forstår toolkit som en pakke.__init__.py
i den rette mappe, og alt virker... ?Er
har en
__init____.py
?For at få import til at vandre gennem dine mapper skal hver mappe have en
__init__.py
-fil.For at markere en mappe som en pakke skal du bruge en fil med navnet
__init__.py
, hjælper det?