__import__() 函数用于动态加载类和函数 。
如果一个模块经常变化就可以使用 __import__() 来动态载入。
语法
__import__ 语法:
__import__(name[, globals[, locals[, fromlist[, level]]]])
参数说明:
name -- 模块名
英文文档:
__import__(name, globals=None, locals=None, fromlist=(), level=0)
getattr() 是 Python 内置的一个函数,可以用来获取一个对象的属性值或方法。
其基本语法为:getattr(object, name[, default])
其中,object 是要获取属性值或方法的对象;name 是要获取的属性名或方法名;default 是可选参数,当指定的属性或方法不存在时,会返回 default 的值。
getattr() 可以通过对象实例或类名来获取属性值或方法,也可以获取内置函数、内置类型和标准库中的属性和方法。
Example1
1 2 3 | package_name = "sens.modules.app.{}" . format ( self .protocol) package = __import__ (package_name, fromlist = [ self .protocol]) package.check(rule, self .data) |
Example2
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | #index.py print ( 'index' ) def sayHello(): print ( 'sayHello ...' ) class Cat(): def __init__( self ): print ( 'cat init' ) def run( self ,name): print ( "cat:{} , running" . format (name)) #test.py # coding:utf-8 mod = __import__ ( "index" ) mod.sayHello() CatClass = getattr (mod, "Cat" ) cat = CatClass() methodRun = getattr (cat, 'run' ) methodRun( "Tom" ) __index__ sayHello ... cat init cat:Tom , running |
分类:
python
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?