importlib 模块导入
#1、动态导入模块
script_name = scripts.utils
module = importlib.import_module(script_name) # 动态导入相应模块 #2、模块引入检查
import importlib.util
import importlib def check_module(module_name):
'''
检查module_name模块是否存在
'''
module_spec = importlib.util.find_spec(module_name)
if module_spec is None:
print("Module :{} not found".format(module_name))
return None
else:
print("Module:{} can be imported!".format(module_name))
return module_spec def import_module_from_spec(module_spec):
'''
动态导入模块
'''
module = importlib.util.module_from_spec(module_spec)
module_spec.loader.exec_module(module)
# module = importlib.import_module(script_name)
return module if __name__ == "__main__":
module_spec = check_module("fake_module")
module_spec = check_module("collections")
if (module_spec):
module = import_module_from_spec(module_spec)
print(dir(module))
参考:https://blog.csdn.net/xc_zhou/article/details/80921546
importlib 模块导入的更多相关文章
- 第十八篇 模块与包--time&random模块&模块导入import(os.path.dirname(os.path.abspath(__file__)))
模块 在Python中, 一个.py文件就称为一个模块. 使用模块的好处: 1. 最大的好处就是大大提高了代码的可维护性 2. 编写代码不必从零开始.一个模块编写完毕,就可以被其他地方引用.在写其他程 ...
- Python importlib(动态导入模块)
使用 Python importlib(动态导入模块) 可以将字符串型的模块名导入 示例: import importlib module = 'module name' # 字符串型模块名 test ...
- isinstance和issubclass、动态模块导入、异常处理
一.isinstance和issubclass isinstance:判断某个对象是否是某个类的实例,返回True或Flase issubclass:判断某个类是否是某个类的子类. 例如: class ...
- python之路(9)反射、包装类、动态模块导入
目录 反射 利用继承二次包装标准类 利用授权二次包装标准类 动态模块导入 反射 python提供自省的四个方法: hasattr(object,name) 判断object中有没有有个name字符串 ...
- importlib模块
importlib模块 import importlib根据这个字符串来导入这个模块的 a=importlib.import_module('xx.oo')print(a.Person())里面可以传 ...
- Logging模块 + traceback模块 + importlib模块 + requests模块
Logiging模块日志级别 CRITICAL = 50FATAL = CRITICALERROR = 40WARNING = 30WARN = WARNINGINFO = 20DEBUG = 10N ...
- importlib模块与__import__详解
importlib模块与__import__都可以通过过字符串来导入另外一个模块,但在用法上和本质上都有很大的不同. 通过下面示例说明,有如下一个工程目录: name = 'test' def get ...
- day 5 模块导入、常用模块os shutil sys commands subprocess hashlib json pickle zipfile traceback random datetime
os: os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 os.chdir("dirname") 改变当前脚本工作目录:相当于shell下cd os. ...
- importlib模块和split的结合使用
1.给定一个文件结构,在main.py中于运用importlib 导入a.py运行其中的show()方法 ├── clazz │ ├── __init__.py │ ├── a.py │ └── b. ...
随机推荐
- mysql误操作后通过binlog恢复,同时解决tmp目录满的问题
注意: 本文的恢复,并不是基于恢复某个时间点的全量备份后的增量恢复,而是指在现有数据库基础上基于binlog的恢复.适用于较小的数据误操作. 提取日志文件为sql语句: /usr-ext/local/ ...
- 怎样取消Macbook上顽固的开机启动项
博主遇到的一个顽固启动项是Cisco Anyconnect.我仅仅是偶尔须要使用VPN.可是安装了Cisco Anyconnect之后,每次开机它都会启动,非常烦人. 1 通过系统设置 首先,博主希望 ...
- ubuntu12.04 下安装nodejs
liunx里面安装nodejs我也找了非常多文章,貌似对非常多liunx新手来讲不是非常清楚,以下是我结合一些文章,亲自实践得到的安装步骤.同一时候还有大家关心的与seajs紧密相关的spm模块的安装 ...
- Python——五分钟理解元类(metaclasses)
“元类的魔幻变化比 99% 的用户所担心的更多,当你搞不懂是否真的需要用它的时候,就是不需要.” —Tim Peters 本文源于在 PyCon UK 2008 上的一个快速演讲. 元类被称为 Pyt ...
- react-native 组件默认属性(defaultProps) 及 属性类型验证(PropTypes)
1.所有的属性类型 2.代码 import PropTypes from 'prop-types'; type Props = {}; export default class App extends ...
- JS常用正则表达式大全
转载自:http://blog.csdn.net/lun379292733/article/details/8169807/ <script type="text/JavaScript ...
- 【SpringMVC学习10】SpringMVC对RESTfull的支持
RESTful架构,就是目前流行的一种互联网软件架构.它结构清晰.符合标准.易于理解.扩展方便,所以正得到越来越多网站的采用.RESTful架构对url进行规范,写RESTful格式的url是什么样子 ...
- Android 图片查看器
1 http://blog.csdn.net/wang8512945/article/details/8075413 2 http://blog.csdn.net/lcore/article/deta ...
- Java GUI编程SwingUtilities.invokeLater作用
1 http://blog.micxp.com/index.php/archives/109/ 2
- 结合jquery的前后端加密解密 适用于WebApi的SQL注入过滤器 Web.config中customErrors异常信息配置 ife2018 零基础学院 day 4 ife2018 零基础学院 day 3 ife 零基础学院 day 2 ife 零基础学院 day 1 - 我为什么想学前端
在一个正常的项目中,登录注册的密码是密文传输到后台服务端的,也就是说,首先前端js对密码做处理,随后再传递到服务端,服务端解密再加密传出到数据库里面.Dotnet已经提供了RSA算法的加解密类库,我们 ...