import functionality in Python
In order to use the names (generally, variable and function definitions) defined in a module, you must either:
you want to use from the module.
By default, no import is allowed. You need to add a Python Package - init .py to the directory package
if you don't import the module, you must refer to a procedure or variable defined therein by using its qualified name.
import myModuleName
myModuleName.func()
from module import func1, func2
# Example
from math import sqrt
print sqrt(25) # The full qualified name is here not needed
import imp
imp.load_source('util', 'C:/full/path/foo/util.py')
import util
from . import mymodule
from .file import myClass
Put your class in a package and use the future absolute_import. See rationale-for-absolute-imports
Example: the below unittest import will import the unittest of the system library, not the script itself
from __future__ import absolute_import
import unittest
from module import *
print sqrt(25)
What is the meaning of star ?
The import statement uses the following convention, if a package’s init.py code, the variable all is:
__all__ = ["echo", "surround", "reverse"]
import sound.effects.echo
import sound.effects.surround
from sound.effects import *
In this example, the echo and surround modules are imported in the current namespace because they are defined in the sound.effects package when the from…import statement is executed. (This also works when __all__ is defined.)
import moduleName as alias
alias.func() # and not moduleName .funct()
from module import name as aliasName
The import statement combines two operations;
To begin the search, Python needs the fully qualified name of the module (or package)
The name of the module are searched in the searchpath
The path is where Python searches the modules to Import.
spam/
__init__.py
foo.py
bar.py
from .foo import Foo
from .bar import Bar
then executing the following puts a name binding to foo and bar in the spam module:
import spam
spam.foo
<module 'spam.foo' from '/tmp/imports/spam/foo.py'>
spam.bar
<module 'spam.bar' from '/tmp/imports/spam/bar.py'>