Relative imports in Python 3

0 votes

In the same directory, I wish to import a function from another file.

One of the following usually works:

from .mymodule import myfunction
from mymodule import myfunction

The other, however, produces one of the following errors:

ImportError: attempted relative import with no known parent package
ModuleNotFoundError: No module named 'mymodule'
SystemError: Parent module '' not loaded, cannot perform relative import

Why is this?
Feb 15, 2023 in Python by Arya
• 990 points
1,120 views

1 answer to this question.

0 votes

Because the first statement, from.mymodule import myfunction, utilises a dot to indicate that the module to import is located in the same directory as the current module, it is referred to as a relative import. When importing modules into another package, which is a directory containing a collection of modules, this syntax is used. The current package is represented by the dot in this instance.

Because it defines the module to import using its whole name, the second statement, from mymodule import myfunction, is referred to as an absolute import. This syntax is used to import modules that are contained in a different package or that are not currently part of the current package.

When a relative import is used in a module that is not a part of a package, the error message "ImportError: tried relative import with no known parent package" is displayed. A directory is considered to be a package if it has the __init .py file, which identifies the directory as such. The interpreter cannot detect the relative path to the module to import if the current module is not a component of a package, which results in the error.

When the interpreter is unable to locate the module to import, the message "ModuleNotFoundError: No module called "mymodule"" is raised. The module may not be installed, it may not be in the same directory as the current module, it may not be in one of the directories mentioned in the Pythonpath variable.

Master the art of Data Science with Python and unlock the power of insights.

answered Feb 16, 2023 by Rishu
• 300 points

Related Questions In Python

0 votes
1 answer

Install pip in Python 3.4

Don't worry! Python already comes in default ...READ MORE

answered May 1, 2018 in Python by aayushi
• 750 points
3,419 views
+3 votes
2 answers

how to print array integer without [] bracket in python like result = 1,2,3,4,5

Hey @abhijmr.143, you can print array integers ...READ MORE

answered Aug 5, 2018 in Python by Omkar
• 69,220 points

edited Aug 8, 2018 by Omkar 8,149 views
0 votes
1 answer

How to use string.replace() in python 3.x

replace() is a method of <class 'str'> ...READ MORE

answered Aug 3, 2018 in Python by Priyaj
• 58,020 points
1,137 views
0 votes
1 answer

'foreach' function in Python 3?

Yes, there is a "foreach" in python. ...READ MORE

answered Oct 24, 2018 in Python by Priyaj
• 58,020 points
8,637 views
0 votes
0 answers

Relative imports - ModuleNotFoundError: No module named x

I have these  two files: test.py config.py These are the following ...READ MORE

May 23, 2022 in Python by Kichu
• 19,040 points
1,684 views
0 votes
1 answer

Crawling after login in Python

You missed a few login data forms, ...READ MORE

answered Sep 7, 2018 in Python by Priyaj
• 58,020 points
1,675 views
0 votes
1 answer

Crawling after login in Python

You missed a few login data forms, ...READ MORE

answered Sep 14, 2018 in Python by Priyaj
• 58,020 points
853 views
0 votes
1 answer

“stub” __objclass__ in a Python class how to implement it?

You want to avoid interfering with this ...READ MORE

answered Sep 27, 2018 in Python by Priyaj
• 58,020 points
2,349 views
0 votes
1 answer

Replacements for switch statement in Python?

To get the same function as a ...READ MORE

answered Feb 16, 2023 in Python by Rishu
• 300 points
1,239 views
0 votes
1 answer

Error: 'int' object is not subscriptable - Python

int([x[age1]]) You are attempting to access the age1 index ...READ MORE

answered Feb 16, 2023 in Python by Rishu
• 300 points
962 views
webinar REGISTER FOR FREE WEBINAR X
REGISTER NOW
webinar_success Thank you for registering Join Edureka Meetup community for 100+ Free Webinars each month JOIN MEETUP GROUP