python基础 第十一节

本文详细阐述了模块化编程的关键概念,包括模块设计、优势、流程、API描述、导入技巧、包的使用及其__init__.py的作用。还介绍了如何通过import和from import进行模块导入,以及sys.path在模块搜索中的角色。
摘要由CSDN通过智能技术生成

模块

将功能相似的函数和类放到一个模块里面

我们将类似功能的模块放到一起形成包

模块编程的优势:(1)任务分解 团队协作开发

(2)实现代码复用,(3)可维护性增强

模块化一般流程:(1)设计API进行功能描述

(2)编码实现API中描述的功能

(3)在模块中编写测试代码,消除全局代码

(4)使用私有函数实现不被外部客户端调用的模块函数

API是用于描述模块中提供的函数和类的功能描述和使用方式描述

模块化编程中首先设计的就是模块API功能描述

__doc__函数可以查看功能描述

在正常情况下,模块名字对应源文件名。只有当一个模块被作为程序入口时,主程序、交互式提示符下,它的__name__值为“__main__”   有if __name__ =="__main__" 则该模块作为独立模块运行

import 模块的导入

from import

import 模块1,模块2

iimport 模块名 as  模块别名

import加载的模块分为四个通用类别:

(1)使用python编写的代码,(2)已被编译为共享库或DLL的C或C++扩展

(3)包好一组模块的包  (4)使用C编写并连接到python解释器的内置模块

import本质上使用了内置函数__import__()可以通过它实现动态导入

当我们通过import导入一个模块时,python解释器进行执行,最终会生成一个对象,这个对象就代表了被加载的模块

导入一个模块无论导入多少次只生成一个对象 

from 模块名 import 成员1,成员2

from import 导入的时模块中的一个函数/一个类

 不要使用from import * 

importlib 动态引入一个模块 importlib.reload

包 package的使用

当一个项目模块很多的时候使用,相当于一个文件夹

创建一个包 自动生成__init__.py文件

导入包的本质是导入了包的__init__.py  在里面写包里面的统一执行代码 定义函数 定义类,保持这个文件比较简单 可在这个文件里面批量导入模块(写多个import语句)  

包名.模块名 来调用

__init__.py 三个核心作用:

(1)作为包的标识,不能删除

(2)用来实现模块导入

(3)导入包是指是执行该文件,可以在文件中做这个包的初始化,以及需要统一执行的代码

包内引用 

from . import xxx同级目录

from .. import xxx上级目录

sys.path 和模块搜索路径

导入模块文件时会按照以下顺序寻找模块文件:

(1)内置模块

(2)当前目录

(3)程序的主目录

(4)pythonpath目录

(5)标准链接库目录

(6)第三方库目录(site-packages目录)

   (7).pth 文件的内容

   (8)sys.path.append()临时添加的目录

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值