How to import a module but ignoring the package's __init__.py?

Question:

I’m trying to import a function which is in a module inside a package in Python, but when I try:

from package.module import some_function

Python executes the package’s __init__.py but it can’t happen.

Is there a way to import the function telling Python to ignore the package’s __init__.py?

Answers:

The answer is No, you can’t import a python package without the __init__.py being executed. By definition, to make a package, you must put in that directory a __init__.py.

But, you can make an empty __init__.py file.

If you want just to import a function from a module, you can use:

import sys
sys.path.append('path_to_package/')

from module import some_function

Note that this is a dirty solution, and won’t always work.

Answered By: kaspersky
Categories: questions Tags: , ,
Answers are sorted by their score. The answer accepted by the question owner as the best is marked with
at the top-right corner.