当前位置:网站首页>day6·动态导入模块
day6·动态导入模块
2022-08-05 13:44:00 【慵懒的猫丫头】
方式1
导入importlib库
使用importlib.import_module(模块名)导入
方式2 不推荐
__import__(模块名)
备注:导入操作只会执行一次
import importlib
a = int(input("请输入a的值"))
if a == 1:
module = importlib.import_module("pac1.pac1")
else:
module = importlib.import_module("pac1.pac2")
b = int(input("请输入b的值"))
if b == 1:
module = __import__("pac1.pac1")
else:
module = __import__("pac1.pac2")
应用场景
多个项目的接口自动化,每个项目的创建数据函数都封装在各自的模块中(都在同一个包下),参数替换时需要调用模块里的方法去替换实际的参数,每个项目调用的模块就不同,所以根据不同的项目去调用不同的模块执行其中的函数获取真实的参数值。这里可以用动态调用模块的方式。
将当前运行的项目写入一个文件,获取当前文件里运行的项目(该项目的名称也是模块的名称),根据该项目名称确认调用的模块名。
import importlib
pro_code= read_project_yaml('project_code')
# 方式1
module = importlib.import_module('目录名.' + pro_code)
# 方式2·不推荐,因为python2 和python3不一致,如果使用的版本不一致可能会导致出现差异问题
module = __module__('目录名.' + pro_code)
边栏推荐
猜你喜欢
随机推荐
EAI X2(非订制版)50一个激光雷达?
R语言时间序列数据提取:使用xts包的last函数提取时间序列中最后面一个月的数据(last 1 month)
怎么在微信上做小程序?不懂代码怎么开发微信小程序?
pandas连接oracle数据库并拉取表中数据到dataframe中、根据状态字段的变化情况筛选数据(shift滞后状态字段后作差、获取状态跳变的位置、最后跳变的位置为数据筛选的索引起点)
2022-08-04 clickhouse的join子句
特种期货开户交易权限开通认定标准
学习笔记61—兴趣阅读之经济学
AntDesign中Table的选择项居右显示
第一章 调度系统架构设计之线程池创建
期货开户流程简便网上可办
R语言使用ggpubr包的ggtexttable函数可视化表格数据(直接绘制表格图或者在图像中添加表格数据)、设置theme主题参数自定义表格中主体内容的字体颜色、填充色并向右对齐
做个小程序商城大约多少钱?哪些方面会影响价格?
VINS-Mono结果展示
4.2 配置Mysql与注册登录模块(中)
OPENCV学习DAY9
HCIP--BGP小综合实验
VINS-Mono reading guide
思岚S1激光雷达
What does state secret mean?Is it commercial secret or common secret?
2022-08-04 Join clause for clickhouse









