python模块和包的区别与联系及使用方法

本文详细介绍了Python中的模块和包的区别与联系,模块作为.py文件,而包是包含__init__.py的文件夹。讲解了模块的import、from...import等导入方式,以及包的导入和使用方法,包括对__init__.py的处理。同时提醒了注意事项,如使用from package import *可能带来的影响。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

区别与联系

  • 模块可以理解后缀名为.py的python的文件(即我们日常保存的所有python文件都可以视作模块)。
  • 模块是包的子文件,可以认为包是文件夹,模块是文件。
  • 但独特之处在于包是在创建时自动添加一个名为__init__.py的文件(即模块)
    如图所示:

使用方法

模块的使用方法

  • 语法:
    import module_name
    module_name.function_name
    module_name.class_name
  • import 模块 as 别名
    • 导入的同时给模块起一个别名
    • 其余用法跟第一种相同
  • from module_name import func_name, class_name
    • 按上述方法有选择性的导入
    • 使用的时候可以直接使用导入的内容,不需要前缀
  • from module_name import *
    • 导入模块所有内容

包的使用方法

  • import package_name

    • 直接导入一个包,可以使用__init__.py中的内容(后续说明)

    • 使用方式是:

        package_name.func_name
        package_name.class_name.func_name()
      
  • import package_name as p

    • 具体用法跟作用方式,跟上述简单导入一致
    • 注意的是此种方法是默认对__init__.py内容的导入(后续说明)
  • import package.module

    • 导入包中某一个具体的模块,

    • 使用方法

        package.module.func_name
        package.module.class.fun()
        package.module.class.var
      
  • import package.module as pm

  • from … import 导入

    • from package import module1, module2, module3, …

    • 此种导入方法不执行__init__的内容

        from pkg01 import p01
        p01.sayHello()
      
  • from package import *
    - 导入当前包 __init__.py文件中所有的函数和类
    - 使用方法

    func_name()
    class_name.func_name()
    class_name.var
    
  • from package.module import *

    • 导入包中指定的模块的所有内容

    • 使用方法

        func_name()
        class_name.func_name()  
      

注意事项

init.py

  • 当包被创建时自带添加
  • 包被全部调用时会运行

参考文献

大拿出品,必属精品。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值