Fix Python – Importing class from another file [duplicate]


Asked By – kemis

Before you mark it as duplicate please read my problem:

I am trying to import a class from a file from a subdirectory

> --->folder/
> ----->

and in i have a class imlpemented ( Klasa)
What have I tried:

putting in

from folder import file
from file import Klasa

I am getting the error:

from file import Klasa

ImportError: No module named ‘file’

When I try to use just:

from folder import file

I get this error:

tmp = Klasa()

NameError: name ‘Klasa’ is not defined

I have put an empty in the subfolder and it still does not work, and I have put in the : from file import Klasa and still doesnt work.

If main and file are in the same folder this work:

from file import Klasa

but i want them to be in separate files.

Can someone tell me what i am doing wrong?

Now we will see solution for issue: Importing class from another file [duplicate]


Your problem is basically that you never specified the right path to the file.

Try instead, from your main script:

from folder.file import Klasa

Or, with from folder import file:

from folder import file
k = file.Klasa()

Or again:

import folder.file as myModule
k = myModule.Klasa()

This question is answered By – Right leg

This answer is collected from stackoverflow and reviewed by FixPython community admins, is licensed under cc by-sa 2.5 , cc by-sa 3.0 and cc by-sa 4.0