zoukankan      html  css  js  c++  java
  • 112.模块导入

    模块导入

    Python中的模块导入分为两种方式:import导入 或者 from - import 导入。

    import

    如果希望从某一个模块中,是一次性把模块中所有的全局变量、函数、类全部导入,就可以使用 import 的方式。

    导入模块语法格式:

    import 模块名1, 模块名2 
    或者
    import 模块名1
    import 模块名2

    使用模块中全局变量、函数、类语法格式:
    模块名.全局变量名 | 模块名.函数名 | 模块名.类名
    示例:

    import hm_itcast, random
    
    # 全局变量
    print(hm_itcast.name)
    
    # 函数
    ret = hm_itcast.add2num(10, 20)
    print(ret)
    
    #
    p = hm_itcast.Person()
    print(p)

    from-import

    如果希望从某一个模块中,导入部分全局变量、函数、类,就可以使用 from-import 的方式。

    导入模块语法格式:

    from 模块名1 import 全局变量名, 函数名
    from 模块名2 import 类名

    使用模块中全局变量、函数、类语法格式:
    全局变量名 | 函数名 | 类名
    示例:

    from hm_itcast import name, add2num
    
    # 全局变量
    print(name)
    
    # 函数
    ret = add2num(10, 20)
    print(ret)

    from-import *

    如果希望从某一个模块中,导入全部全局变量、函数、类,但是还不想在使用的时候书写模块名,就可以使用 from-import * 的方式。

    导入模块语法格式:

    from 模块名 import *

    使用模块中全局变量、函数、类语法格式:
    全局变量名 | 函数名 | 类名
    示例:

    from hm_itcast import *
    
    # 全局变量
    print(name)
    
    # 函数
    ret = add2num(10, 20)
    print(ret)
    
    #
    p = Person()
    print(p)

    这种方式不推荐使用,因为全局变量、函数、类重名并没有任何的提示,出现问题不好排查。

    as的作用

    如果使用import 模块名 方式导入模块,如果被导入的模块名过长的时候,可以使用 as 指定模块的别名,以方便在代码中的使用。

    示例:

    import hm_itcast as hm_it
    
    # 全局变量
    print(hm_it.name)
    
    # 函数
    ret = hm_it.add2num(10, 20)
    print(ret)
    
    #
    p = hm_it.Person()
    print(p)

    如果使用 from 模块名 imoport 全局变量名,函数名,类名 方式导入模块, 如果被导入的全局变量、函数、类和本模块中的全局变量、函数、类的名字重名的时候,可以使用 as 指定全局变量、函数、类的别名。

    示例:

    from hm_itcast import name as my_name
    
    # 全局变量
    print(my_name)

    例子:

    # 01:import
    # 是把被导入的模块中的全局变量 | 函数 | 自定义类 全部导入
    # import random
    # #  格式: import 模块名
    # import hm_itcast
    # 或者
    # import random, hm_itcast
    #
    #
    # # 使用格式: 模块名.全局变量 | 函数 | 自定义类
    # # 全局变量
    # print(hm_itcast.name)
    # # 函数
    # print(hm_itcast.add2num(10, 11))
    # # 自定义类
    # print(hm_itcast.Person())
    
    # 02: from-import
    # 选择性导入
    # 格式: from 模块名 import 对应的元素名
    # from hm_itcast import name, add2num
    #
    # # 使用格式:全局变量 | 函数 | 自定义类
    # print(name)
    # print(add2num(10, 20))
    
    # 03:from-import *
    # 全部导入
    # 格式: from 模块名 import *
    
    # from hm_itcast import *
    # 一般不建议使用. 会造成 变量名 函数名 类名 重名  报错不好查询
    # 使用格式:全局变量 | 函数 | 自定义类
    # print(name)
    # print(add2num(10, 20))
    # print(Person())
    
    # 04: as的作用 起别名
    # 01: 导入的模块名名字较长
    # import hm_itcast as hm_it
    # print(hm_it.name)
    # 02:
    from hm_itcast import name as my_name
    # # 全局变量
    # my_name = "小明"
    # # 分别可以打印 自定义模块 和 小明
    # print(name)
    # print(my_name)
    
    # 全局变量
    name = "小明"
    # 分别可以打印 自定义模块 和 小明
    print(my_name)
    print(name)
  • 相关阅读:
    理解MySQL——索引与优化
    ArrayList vs LinkedList vs Vector
    Java集合框架的接口和类层次关系结构图
    Java集合的10个最常见问题
    Mysql 中的事件//定时任务
    Mysql中的函数
    Mysql中的触发器
    Mysql中的存储过程
    Oracle数据库表的一些宏处理
    Oracle查询和过滤重复数据
  • 原文地址:https://www.cnblogs.com/kangwenju/p/12882826.html
Copyright © 2011-2022 走看看