您的位置:首页 > 编程语言 > Python开发

python 基础 —— __import__() 函数

2017-06-02 17:29 302 查看
__import__(name[, globals[, locals[, fromlist[, level]]]]):


该函数由import语句调用。它可以被替换(通过导入
__builtin__
模块并分配给
__builtin __.__ import__
)以便改变import语句的语义,但是现在通常使用导入钩子更简单(参见PEP 302)。直接使用
__import __()
是罕见的,除非您要导入名称仅在运行时已知的模块。

该函数导入模块名称,潜在地使用给定的全局变量和本地人来确定如何解释包上下文中的名称。 fromlist给出了应该从由name指定的模块导入的对象或子模块的名称。标准实现根本不使用其locals参数,并且仅使用其全局变量来确定import语句的包上下文。

level指定是使用绝对还是相对导入。默认值为-1,表示将尝试绝对和相对导入。 0表示仅执行绝对导入。级别的正值表示相对于调用
__import __()
的模块的目录来搜索的父目录的数量。

当名称变量的形式为
package.module
时,通常返回顶级包(名称直到第一个点),而不是以name命名的模块。但是,如果给出非空的fromlist参数,则返回名为name的模块。

test.py:


# -*- coding:utf-8 -*-

def hello_world():
print('hello_world!')

if __name__ == '__main__':
my_module = __import__('__import__module')
print(my_module)
print(type(my_module))


输出:

<module '__import__module' from 'C:\Users\rHotD\Documents\GitHub\fieldwork_test\2017-06-02\__import__module.py'>
<type 'module'>

Process finished with exit code 0
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: