问题
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?
回答1:
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.
来源:https://stackoverflow.com/questions/13763985/how-to-import-a-module-but-ignoring-the-packages-init-py