python通过名字导入模块

稜镜组合
• 阅读 1037

当我们自定义编写一个框架时,需要先导入依赖的模块可以用到如下的导入方法

def import_object(name):
# type: (_BaseString) -> Any
"""Imports an object by name.

import_object('x') is equivalent to 'import x'.
import_object('x.y.z') is equivalent to 'from x.y import z'."""


if not isinstance(name, str):
    # on python 2 a byte string is required.
    name = name.encode('utf-8')
if name.count('.') == 0:
    return __import__(name, None, None)

parts = name.split('.')
obj = __import__('.'.join(parts[:-1]), None, None, [parts[-1]], 0)
try:
    return getattr(obj, parts[-1])
except AttributeError:
    raise ImportError("No module named %s" % parts[-1])
点赞
收藏
评论区
推荐文章
Stella981 Stella981
3年前
Python何时执行装饰器
装饰器的一个关键特性是,它们在被装饰的函数定义之后立即运行。这通常是在导入时(即Python加载模块时),如示例72中的registration.py模块所示。  示例72registration.py模块registrydefregister(func):print(
Stella981 Stella981
3年前
Python 学习之路(四)
Python学习之路(四)以下所用的是Python3.6一、时间模块(time模块)实例环境为Ubuntu14.04python3.6导入time模块。注:可以在命令行输入:help(time.方法名字)查看帮助文档,例:help(time.localtime)
Stella981 Stella981
3年前
Python中的import语句
Python中的import语句是导入一个文件,这条语句主要做三件事:1通过一定的方式,搜寻要导入的文件;2如果需要,就编译这个文件;3运行这个文件但是,需要注意的是,所有这三个步骤,都只是文件再第一次导入的时候才会执行,如果文件已经导入了,后续的import会直接从内存里面找到已经加载的模块使用,换句话说,此时,import不会执行上
Stella981 Stella981
3年前
Python调用C语言函数
在C调用Python模块时需要初始化Python解释器,导入模块等但Python调用C模块却比较简单,ctypes模块提供了和C语言兼容的数据类型和函数来加载dll或so文件,因此在调用时不需对源文件做任何的修改1.编写C语言代码,可参考https://www.cnblogs.com/zhouzhishuai/p/9529487.html(ht
Stella981 Stella981
3年前
Python有趣的小案例
导入turtle模块模块是python自带的工具箱,这里将工具箱导入就能使用了turtle模块是python用来画图的工具箱importturtle将turtle里的工具拿出来,赋给t变量照猫画虎用就是了,这些东西要到很后面才能理解t
Stella981 Stella981
3年前
Python基础(七)
1模块函数1.1模块函数模块函数指的是模块中的函数,模块函数有三种:内置模块:又叫标准库.第三方开源模块:可以通过包管理工具进行安装.自定义模块.1.2导入导入方法主要有三种:1.2.1importmoudleimportmath
可莉 可莉
3年前
18.Python模块包(pycharm右键创建文件夹和python package的区别)中__init__.py文件的作用
原来在python模块的每一个包中,都有一个\_\_init\_\_.py文件(这个文件定义了包的属性和方法)然后是一些模块文件和子目录,假如子目录中也有\_\_init\_\_.py那么它就是这个包的子包了。当你将一个包作为模块导入(比如从 xml导入 dom )的时候,实际上导入了它的 \_\_init\_\_.py 文件。一个包是一个带有特殊文
小万哥 小万哥
1年前
Python 模块:创建、导入和使用
什么是模块?将模块视为代码库。模块是一个包含一组函数的文件,您想要在应用程序中包含这些函数。创建一个模块要创建一个模块,只需将要包含在其中的代码保存在扩展名为.py的文件中:示例:将以下代码保存在名为的文件中:pythondefgreeting(name)
小万哥 小万哥
1年前
Python 日期和时间处理教程:datetime 模块的使用
Python中的日期不是独立的数据类型,但我们可以导入一个名为datetime的模块来使用日期作为日期对象。示例:导入datetime模块并显示当前日期:pythonimportdatetimexdatetime.datetime.now()print(x
马尚 马尚
1年前
python识别验证码
导入所需模块和库:导入了用于发送HTTP请求、处理正则表达式、Base64编码等功能的Python模块。pythonimportrequestsimporttimeimportjsonimportreimportbase64定义函数解析Cookie字符串:
稜镜组合
稜镜组合
Lv1
这段感情我们真的该放下了,不舍也咽入口中,散了吧
文章
4
粉丝
0
获赞
0