包的基本使用

目录

一、看一个应用场景

二、基本介绍

三、快速入门 

四、注意事项和使用细节

1、导入包的基本语法

2、导入包的模块的指定函数、类、变量

3、__init__.py 通过__all__控制允许导入的模块

4、包可以有多个层级

5、快捷键 alt+enter/shift+alt+enter 可以快捷的导入

6、说明:使用哪一种导入方式,根据业务需求来确定即可


文档:5. 导入系统 — Python 3.12.4 文档

一、看一个应用场景

一个实际的项目,可能需要很多的模块,当模块文件越来越多,如果我们将所有的模块文件都放在同一个文件夹,就会带来很多问题,不利于管理,怎么办?--> 包

二、基本介绍

1、从结构上看,包就是一个文件夹,在该文件夹下包含一个__init__.py文件,该文件夹可以用于包含多个模块文件,从逻辑上看,包可以视为模块集合

2、包的结构形式示意图

3、__init__.py:控制包的导入操作

4、导入包&使用的基本语法

导入:import 包名.模块

使用:包名.模块.功能

三、快速入门 

快速入门案例

1)创建一个包(hsp_package)

2)在该包下,创建两个模块,module01.py和module02.py,分别编写hi()和ok()函数

3)编写文件 use_.py 导入该包下的两个模块,并调用 hi()和ok()

注意:在创建包的时候,要选择Python package 会自动生成__init __.py文件

 

# module01.py
def hi():
    print("module01,hi()")
# module02.py
def ok():
    print("module02,0k()")
# 导入包下的模块
import hsp_package.module01
import hsp_package.module02

# 使用导入的模块
hsp_package.module01.hi()
hsp_package.module02.ok()

四、注意事项和使用细节

1、导入包的基本语法

import 包名.模块

from 包名 import 模块

1)上面是两种导入包基本方式

2)import 包名.模块,在使用时,包名.模块.功能

3)from 包名 import 模块,在使用时,模块.功能,不需要带包名

# from 包名 import 模块,在使用时,模块.功能,不需要带包名
from hsp_package import module01
module01.hi()

2、导入包的模块的指定函数、类、变量

from 包名.模块 import 函数、类、变量

1)上面是导入包的模块的指定函数、类、变量

2)在使用时,直接调用功能

3)from 包名.模块 import * :表示导入包的模块的所有功能

# 导入包的模块的指定函数、类、变量
from hsp_package.module01 import hi
hi()

3、__init__.py 通过__all__控制允许导入的模块

1)在__init__.py中增加__all__=[允许导入的模块列表]

2)针对from 包 import * 方式生效,对 import xx 方式不生效

# __init__.py
# 控制包允许导入的模块
__all__=['module02']
from hsp_package import *

module02.ok()
# 引入限制了module01模块导入,因此不能使用
# module01.hi()
#  __all__=['module02']不能限制下面的导入形式
import hsp_package.module01
import hsp_package.module02

hsp_package.module02.ok()
hsp_package.module01.hi()

4、包可以有多个层级

1)包下还可以再创建包

2)在使用时,通过 . 来确定层级关系

# hsp_package/hsp_package2/module03.py
def cal(n1,n2):
    print(f"结果是->{n1+n2}")
# use_.py
# 包可以有多个层级
# 方式1
import hsp_package.hsp_package2.module03
# 使用
hsp_package.hsp_package2.module03.cal(10,30)
# use_.py
# 方式2
from hsp_package.hsp_package2 .module03 import cal
cal(60,90)
# 方式3
from hsp_package.hsp_package2 import module03
module03.cal(10,30)

5、快捷键 alt+enter/shift+alt+enter 可以快捷的导入

1)alt+enter,提示选择解决方案

2)shift+alt+enter,直接导入

6、说明:使用哪一种导入方式,根据业务需求来确定即可

  • 16
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值