IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 开发工具 -> python基础学习Day9:模块(内置模块、第三方模块、自定义模块)、模块的使用、if__name__==‘__main__‘的用法、包的使用、递归函数、闭包、装饰器(语法糖用法、设置多个装饰器) -> 正文阅读

[开发工具]python基础学习Day9:模块(内置模块、第三方模块、自定义模块)、模块的使用、if__name__==‘__main__‘的用法、包的使用、递归函数、闭包、装饰器(语法糖用法、设置多个装饰器)

一、模块?

模块:就是.py文件,里面定义了一些函数和变量,需要的时候就可以导入这些模块。

执行步骤:

1、在python模块加载路径中查找相应的模块文件。

2、将模块文件编译成中间代码。

3、执行模块文件中的代码。

1、内置模块

内置模块也叫标准库,比如random,time

查看所有内置模块:

2、第三方模块

第三方模块也叫第三方库,通过包管理工具pip安装。

安装命令pip install 模块名

例:

3、自定义模块

自己在项目中定义的模块,模块名要遵循Python变量命名规范,不要使用中文、特殊字符。

二、模块的使用

1、import 模块名

使用import导入模块,格式:import 模块名

2、导入自定义模块?

导入自定义模块时,py文件必须要在同一目录下

3、from...import..

from...import..,从模块中导入指定的部分。

from...import..导入自定义模块

4、模块起别名 as

格式:import 模块 as 模块别名

5、导入多模块

三、过滤执行代码写法

作用:用来控制py文件在不同的应用场景下执行的不同的逻辑。

当文件被当作脚本执行时:__name__等于'__main__',当文件被当作模块导入时__name__等于模块名

过滤执行代码方式: ?? ???????

if __name__ == '__main__':

????????执行代码

当导入text模块文件时,运行此模块文件,if__name__=='__main__'下的代码被保护起来,运行不了。?

?

四、包的使用

概念: 包就是项目结构中的文件夹/目录,包含有__init__.py文件的文件夹

作用: 包用于将不用的模块进行分类管理, 包本身不具有具体的含义, 仅用于文件分层管理

注意:

1、import导入包时,首先执行__init__.py文件的代码

2、不建议在init中写入python模块,尽量保证init内容简单

1、创建一个包

1.1、在项目文件下鼠标点击右键——>新建——>Python Package

1.2、给包命名,千万不要以模块的名字命名

?

2、包的使用例子

2.1 在包下分别创建text.py和login.py文件

?

?

?2.2 在Day9.py文件下导包使用?

下图的代码运行逻辑:先执行First_Package包下__init__.py文件下的代码,再执行text.py文件下res()函数。

2.3 __all__=[]的使用

__all__=[],可以控制要引入的东西(模块、函数、类等),通常在__init__.py文件下写入

五、递归函数?

如果一个函数在内部不调用其它的函数,而是自己本身的话,这个函数就递归函数

递归函数:

1、必须有一个明确的结束条件

2、每进行更深一层的递归时,问题规模相比上次递归都要有所减少

3、相邻两次重复之间有紧密的联系

举例:

下图的代码逻辑:

第一次:4 + func(3)

第二次:4 + 3 + func(2)

第三次:4 + 3 + 2 + func(1)

在func(1)中,因为n==1,所以返回值1,代码结束,最终变成:4 + 3 + 2 +?1,结果为10

六、闭包

两个函数的嵌套, 内部函数使用到了外部函数的变量, 这个现象就可以称之为产生闭包

构成条件

1、函数中嵌套了一个函数

2、内层函数使用了外层函数的变量

3、外层函数的返回值时内层函数的函数名

也可写成:outter()()

?

注意:虽然每次调用内函数,会开启一个函数,执行后消亡,但是闭包变量实际只有一份,每次使用内函数都在使用同一份闭包变量。

七、装饰器(语法糖用法、设置多个装饰器)

装饰器本质上是一个Python函数,它可以让其他函数在不需要做任何代码变动的前提下增加额外功能,装饰器的返回值也是一个函数对象。

1、装饰器:增加额外功能

2、语法糖的使用

语法糖用法: ??

?????????@装饰器名称(放到需要装饰的函数的头上即可)

3、多个装饰器

?

?

?

?

?

?

?

?

?

?

?

  开发工具 最新文章
Postman接口测试之Mock快速入门
ASCII码空格替换查表_最全ASCII码对照表0-2
如何使用 ssh 建立 socks 代理
Typora配合PicGo阿里云图床配置
SoapUI、Jmeter、Postman三种接口测试工具的
github用相对路径显示图片_GitHub 中 readm
Windows编译g2o及其g2o viewer
解决jupyter notebook无法连接/ jupyter连接
Git恢复到之前版本
VScode常用快捷键
上一篇文章      下一篇文章      查看所有文章
加:2022-02-19 01:22:51  更:2022-02-19 01:23:53 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/17 20:17:58-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码