07模块和包

💡大纲

⭕了解第三方模块的导入和使用

(一)模块是啥?

💡模块是一种代码的打包手段(打包是为了重用),当一些代码在程序中重复出现的时候,就会导致冗杂的局面出现PS:抄作业会吧,跟别人说一声(声明导入),然后就可以拿来抄了(使用)

👉模块是Python中最高级别的组织结构,也是最高层次的代码重用手段,Python最好的特性是可以支持进行高效率的开发

👉使用Python开发程序的第一步要考虑的是实现这些功能,都要用的哪些模块的组合,因为实现各种功能需要的第三方模块PyPi上面都有

1、函数

  • 这时候就会把它打包成函数的形式,这样只需要调用函数就可以实现代码的重复使用,这是学到的第一种代码打包手段 

2、类和对象

  • 运用类和对象的打包思维,任何事物都可以被看作是属性和方法的有机结合
  • 属性决定了对象的静态特征,方法决定了对象的动态能力

(二)模块来源

1、python库

2、第三方库

  • 数据分析numpy
  • pandas
  • 数据可视化matplotlib
  • 机器学习scikit-learn
  • 深度学习Tensorflow

3、自定义文件

  • 单独py文件

  • 包:包含多个py文件。文件夹内多个py文件,再加一个__init__.py文件(内容可为空)

(三)模块的导入

1、导入整个模块---import 模块名

👉调用方式:模块名.函数名或类名

import time
start = time.time() # 调用time模块中的time()
time.sleep(5) # 调用time模块中的sleep()
end = time.time()       
print("程序运行用时:{:.2f}秒".format(end-start))
# 程序运行用时:3秒

import fun1 # 导入fun1.py文件
fun1.f1() # 导入fun1成功

2、从模块中导入类或函数---from 模块 import 类名或函数名

 👉调用方式:函数名或类名

from time import time # 模块名 函数名   
start = time() # 调用函数
print(start) # 1666183351.2384448

from function.fun1 import f1  # 模块是function文件夹里的fun1.py文件 f1是函数名      
f1()
# 导入fun1成功

# 一次性导入多个
from function import fun1, fun2
fun1.f1()
fun2.f2()
'''
导入fun1成功
导入fun2成功
'''

3、导入模块中所有的类和函数---from 模块 import * 

👉调用方式:函数名或类名

👉一次性导入该模块的所有内容,不提倡

4、import 模块名称 as 关联名称 

(四)模块的查找路径

💡模块搜索查找顺序

👉内存中已经加载的模块,就算在硬盘中删除了,该模块仍然存在,说明优先从内存读取

👉Python 启动时,解释器会默认加载一些模块存放在sys.modules中

# sys.modules 变量包含一个由当前载入(完整且成功导入)到解释器的模块组成的字典, 模块名作为键, 它们的位置作为值

👉sys.path路径中包含的模块

import sys
sys.path

👉sys.path的第一个路径是当前执行文件所在的文件夹

👉若需将不在该文件夹内的模块导入,需要将模块的路径添加到sys.path

import sys
sys.path.append("C:\\Users\\ibm\\Desktop") # 注意是双斜杠
import fun3 # 一开始该模块不在该文件夹内,将其路径添加到sys.path
fun3.f3()

 

 📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

盾山狂热粉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值