拓冰建站拓冰建站
首页 / 资讯中心 / 正文

python __import__ 内置函数模块导入

日常工作中我们python的模块导入除了我们常用的#导入某个模块 import os #导入某个模块并用as关键字给起个简短的别名 import xml.etree.ElementTree as ET #导入某个模块中部分子模块而不是整个模块。这样做的好处是可以减少不必要的导入确保代码的清晰性和可维护性 from google.protobuf import json_format有时还可能存在不确定模块数量的情况例如:由 Protocol Buffers 工具生成的 Python 文件。在 Protocol Buffers 中.proto文件定义了数据结构和通信协议然后使用 Protocol Buffers 编译器将.proto文件编译成对应的语言文件比如 Python 中的.py文件。当我们要用到这些xxxModuleName_pb2.py时我们根据运行时的生成的.py文件来导入不确定数量的模块的也就是动态导入模块的场景#遍历文件夹收集所有需要导入的模块名 for root, dirs, files in os.walk(common_def.PYTHON_GEN_PATH, topdownFalse): for name in files: if name.endswith(.py): cur_list.append(name.split(.)[0]) #1.__import__ 函数是 Python 内置的函数用于动态导入模块。它接受一个模块名 #作为参数并返回对应的模块对象。 #2.map() 函数将 __import__ 函数映射到 cur_list 列表的每个元素上并将结果 #存储在 comm_loaded_modules 列表中。 #3.如果 cur_list 是一个包含模块名称的字符串列表那么 list(map(__import__, cur_list)) #的作用是将这些字符串对应的模块依次导入并将导入后的模块对象存储在 comm_loaded_modules 列表中。 loaded_modules list(map(__import__, cur_list))
分享:

看完干货,该让你的企业上线了

免费需求沟通 · 48 小时内出具建站方案 · 河南本地可上门