【Python】深究模块导入:from .. import ..\ import ..

模块导入:from .. import ..\ import ..

  • from .. import .. 用法
  • 从py模块中导入变量,import后可以是多个
  • 从py模块中导入全部全局变量
  • 从py模块中导入单个变量且取别名
  • import … 用法
  • 导入整个py模块
  • 导入整个py模块并取别名
  • 导入多个模块
  • 区别、本质、应用场景
  • Python中模块导入方式分为两种,以图中为例:mytest.py定义变量,导进main.py
    next part详解!!!

    from … import … 用法

    from … import …具备三种形式

    从py模块中导入变量,import后可以是多个

    from [module] import [var],*

    从py模块中导入全部全局变量

    from [module] import *

    从py模块中导入单个变量且取别名

    注意:本用法不支持批量导入

    from [module] import [var] as [var]

    import … 用法

    导入整个py模块

    import [module]

    导入整个py模块并取别名

    import [mudule] as [var]

    导入多个模块

    为了下面的测试,新建一个py文件并编写一个变量

    import [module],*

    区别、本质、应用场景

    相同点:
    1、都是对模块的导入
    2、导入模块时,无论导入的函数是什么、有多少,都会完全执行被导入模块的全部代码,理解如下:

    将index.func导入main时,print将会被执行


    不同点:
    1、导入的代码形式不同
    2、from不支持批量模块导入,import …支持
    3、命名作用域不同,理解如下:
    func:函数对象
    index: 模块对象,func存在于模块对象中,是嵌套关系

    '使用locals打印一下当前空间变量名'
    from index import fun
    import index
    print(locals())
    

    本质:
    不论是from import 还是import,都会到变量名上面来,而变量命名实质上还是为了理解代码。故两者都是为了代码理解服务——划分功能层次

    推荐应用场景:
    import 和 from… import…可结合使用,但必须保证导入模块的命名是容易理解的(所以需要在编写代码时保证功能模块命名的一致性和可理解性)

    来源:会振刀的程序员

    物联沃分享整理
    物联沃-IOTWORD物联网 » 【Python】深究模块导入:from .. import ..\ import ..

    发表评论