一 包和模块的定义
模块是一个python文件,简单来说以 .py 结尾的文件就是模块,包含了python对象定义和函数等。
包就是文件夹,但该文件夹下必须存在 __init__.py 文件, 该文件的内容可以为空。__init__.py 用于标识当前文件夹是一个包。包下面可以有不同作用的模块,也就是python文件。包下面还可以有子包,也就是子文件夹。
包下面的 __init__.py 文件在导入时会自动执行,并且多次导入时,只执行一次。
这个文件一般用于加载公共模块,例如python内置模块及第三方模块
二 模块类别
模块主要分为内置模块、第三方模块及自定义模块。
其中内置模块就是python自带的模块,例如:os、json、re等。
第三方模块就是别人写好的模块,我们可以通过 pip install 模块名 安装第三方的模块。例如:requests模块
自定义模块,顾名思义就是我们自己定义的模块,通常都放在自定义的某个包里。
三 模块的导入
如果我们想要使用其他模块中的类、函数及变量时,我们可以通过 import 加载,这个过程就叫做模块导入。
模块导入有两种方式,一种是直接通过 import 导入,第二中是通过 from + import 方式导入。
第一种方式大多数都是用在导入官方或者第三方模块时使用,例如下方案例:
# 导入内置的文件操作模块
import os
# 导入第三方HTTP请求模块
import requests
# 请求url
res = requests.get(url='https://motui8.cn')
第二种方式一般都是导入自定义的模块。由于自定义的模块一般都会放在某个包中,所以在导入模块时通过 from 表明,当前模块来自于哪个包,还可直接申明是包中的哪个模块。具体导入方式如下案例:
# 导入 utils 包里面 tools 模块下的 face_swapper 类
from utils.tools import face_swapper
如果包下面有多层子包时,我们可以通过.子包名的方式加载子包的模块中的函数,例如:
# 导入 utils 包里面 sub_utils 子包中 tools 模块下的 face_swapper 类
from utils.sub_utils.tools import face_swapper
这样看起来有点像是PHP中的命名空间。
如果导入的模块的类名或者函数名太长时,python提供别名的方法进行优化,具体方式如下:
# 导入face_swapper类并给他设置一个别名
from utils.sub_utils.tools import face_swapper as fsw
# 使用时,可以直接通过别名进行调用
python函数式编程过程中,一个模块可能定义多个函数,在导入时我们可以通过 , 分割需要导入的具体函数。如果我们想要导入某个模块下的所有代码时,可以使用 * 号表示。具体代码形式如下方示例:
# 通过逗号分隔多个导入的代码
from utils.tools import face_swapper,face_enhancer
# 导入所有代码时,使用 * 表示
from utils.tools import *
最后
我们准备了一门非常系统的爬虫课程,除了为你提供一条清晰、无痛的学习路径,我们甄选了最实用的学习资源以及庞大的主流爬虫案例库。短时间的学习,你就能够很好地掌握爬虫这个技能,获取你想得到的数据。
01 专为0基础设置,小白也能轻松学会
我们把Python的所有知识点,都穿插在了漫画里面。
在Python小课中,你可以通过漫画的方式学到知识点,难懂的专业知识瞬间变得有趣易懂。
你就像漫画的主人公一样,穿越在剧情中,通关过坎,不知不觉完成知识的学习。
02 无需自己下载安装包,提供详细安装教程
03 规划详细学习路线,提供学习视频
04 提供实战资料,更好巩固知识
05 提供面试资料以及副业资料,便于更好就业
这份完整版的Python全套学习资料已经上传CSDN,朋友们如果需要也可以扫描下方csdn官方二维码或者点击主页和文章下方的微信卡片获取领取方式,【保证100%免费】