反射引入

操作引入

from 反射.settings import DB_PATH

def func():
    # 导入文件
    # 反射
    # DB_PATH = "db.mysql.MySQLHelper"
    module_path,cls_name = DB_PATH.rsplit('.',maxsplit=1)

    # 以字符串的形式导入模块
    # from db import mysql
    import importlib
    module_obj = importlib.import_module(module_path)

    # 去模块中导入类
    cls = getattr(module_obj,cls_name)

    # 类实例化
    obj = cls()
    obj.fetchone()


if __name__ == '__main__':
    func()

配置文件

# DB_PATH = "db.mysql.MySQLHelper"
DB_PATH = "db.sqlserver.SqlServerHelper"
反射引入_第1张图片
配置

mysql配置

class MySQLHelper(object):

    def fetchone(self):
        """
        链接MySQL,获取一条数据
        :return: 
        """
        print('MySQL.fetchone')

你可能感兴趣的:(反射引入)