zoukankan      html  css  js  c++  java
  • python中init编写from * import * 简化包的引用

    _init_ :  在调用该包时,会执行包中的init文件内容

    如图,Commonly包下有三个经常被调用的文件

    若要在其他外部文件(test)中调用Commonly中三个文件中的类,则需要在test中编写引用:   

    from Commonly.Param_url import Param
    from Commonly.Response import Response
    from Commonly.Request import Request

    若在多个文件中都引用Commonly中三个文件中的类,则需在每个文件中如此编写相较麻烦

    解决方法

    可在Commonly中的init文件中编写

    # from Commonly.Param_url import Param
    #from Commonly.Response import Response
    from Commonly.Request import Request
    from .Response import Response  # 表示在当前包下寻找Response
    from .Param_url import Param
    
    #__all__=['Param', 'Response', 'Request']   # 使用__all__写入要调用的模块名, 在其他文件调用时需写:模块名.(类名).方法名【若无类则:模块名.方法名)

    则在其他文件(test)中调用时可如下写即可:

    from Commonly import Request, Param, Response
    
    或者# from Commonly import *

    _init_的作用:

    1. Python中package的标识,不能删除

    2. 定义__all__用来模糊导入或者定义from * import * 引用包

    3. 编写Python代码(不建议在__init__中写python模块,可以在包中在创建另外的模块来写,尽量保证__init__.py简单)

  • 相关阅读:
    LoaRunner性能测试系统学习教程:日志文件分析(8)
    LoaRunner性能测试系统学习教程:MPM相关参数(7)
    LoaRunner性能测试系统学习教程:MPM调优(6)
    响应器
    分页器
    权限组件、频率组件
    drf视图组件、认证组件
    drf序列化组件
    RESTful
    IO操作、PIL使用、Django的admin操作
  • 原文地址:https://www.cnblogs.com/byy521/p/15205113.html
Copyright © 2011-2022 走看看