没有合适的资源?快使用搜索试试~ 我知道了~
跟我一起写Python
需积分: 0 2 下载量 16 浏览量
2023-01-31
16:34:02
上传
评论 1
收藏 3.13MB PDF 举报
温馨提示
试读
86页
内容概要:《跟我一起写 Python》是笔者在在学习python后想着写一份通俗易懂的教程,于是写下此文档。这里面是一些很基础的python小知识: 从简单的IO输入输出到list、tuple、字典、集合等 之后逐步学习python函数的一些高级特性 再到OOP面对对象编程 最后补充了一些错误调式的方法和语句 能学到什么:笔者写下《跟我一起写 Python》,主要是想和朋友们一起学习,本文档中有什么说的不对的地方还请朋友们指正。 阅读建议:本文档的阅读最好有一些 C 语言的基础,C 语言课程学习推荐有 b 站浙大翁恺的课程。
资源推荐
资源详情
资源评论
1
跟我一起写 Python
笔者:瑞奇
目录
跟我一起写 Python ...................................................................................................................................... 1
1.前言 .............................................................................................................................................................. 4
2.进入 Python 的世界 .................................................................................................................................. 4
2.1 Python 简介 ........................................................................................................................................................ 4
2.2 环境搭建 .............................................................................................................................................................. 4
2.2.1 安装 Python ............................................................................................................................................... 4
2.2.2 安装 IDE ...................................................................................................................................................... 6
2.3 Python 之禅 ........................................................................................................................................................ 7
3. Python 入门 ............................................................................................................................................... 8
3.1 Python 基础 ........................................................................................................................................................ 8
3.2 最基本的 IO——输入与输出 ....................................................................................................................... 8
3.2.1 Say Hello World ......................................................................................................................................... 9
3.2.2 Input into Computer ................................................................................................................................ 9
3.3 基本数据类型 .................................................................................................................................................. 11
3.3.1 动态语言 ................................................................................................................................................... 11
3.3.2 布尔值 ........................................................................................................................................................ 11
3.3.3 字符串 ........................................................................................................................................................ 12
3.3.3.1 字符串的简单处理 ...............................................................................................................................................12
3.3.3.2 字符编码 .................................................................................................................................................................12
3.3.3.3 Python 字符串的编码.........................................................................................................................................14
3.3.3.4 字符串格式化 ........................................................................................................................................................15
3.4 认识新朋友 ...................................................................................................................................................... 16
3.4.1 list ................................................................................................................................................................ 16
3.4.2 tuple ........................................................................................................................................................... 17
3.4.3 dict .............................................................................................................................................................. 18
3.4.4 set ................................................................................................................................................................ 19
3.4.5 再议不可变对象 ..................................................................................................................................... 20
3.5 他乡遇故知 ...................................................................................................................................................... 20
3.5.1 条件判断 .................................................................................................................................................. 20
3.5.2 循环 ........................................................................................................................................................... 21
4.学会优雅 ................................................................................................................................................... 23
4.1 函数.................................................................................................................................................................... 23
4.1.1 定义函数 .................................................................................................................................................. 23
4.1.2 函数的参数 ............................................................................................................................................. 24
4.1.2.1 位置参数 .................................................................................................................................................................24
2
4.1.2.2 默认参数 .................................................................................................................................................................24
4.1.2.3 可变参数 .................................................................................................................................................................25
4.1.2.4 关键词参数 .............................................................................................................................................................26
4.1.2.4 命名关键词参数 ...................................................................................................................................................26
4.1.2.5 参数组合 .................................................................................................................................................................27
4.2 高级特性 .......................................................................................................................................................... 28
4.2.1 切片 ............................................................................................................................................................ 28
4.2.2 迭代 ............................................................................................................................................................ 28
4.2.3 列表生成器 .............................................................................................................................................. 30
4.2.4 生成器 ........................................................................................................................................................ 31
4.2.5 迭代器 ........................................................................................................................................................ 35
4.3 函数式编程 ....................................................................................................................................................... 37
4.3.1 高阶函数 ................................................................................................................................................... 37
4.3.1.1 map/reduce ...........................................................................................................................................................37
4.3.1.2 filter ...........................................................................................................................................................................41
4.3.1.2 sorted .......................................................................................................................................................................44
4.3.2 闭包 ............................................................................................................................................................ 45
4.3.2.1 返回函数 .................................................................................................................................................................45
4.3.2.2 nonlocal ...................................................................................................................................................................47
4.3.3 匿名函数 ................................................................................................................................................... 47
4.3.4 装饰器 ........................................................................................................................................................ 48
4.3.5 偏函数 ........................................................................................................................................................ 50
4.4 模块 ..................................................................................................................................................................... 51
4.4.1 使用模块 ................................................................................................................................................... 51
4.4.2 作用域 ........................................................................................................................................................ 52
4.4.3 站在巨人的肩膀上 ................................................................................................................................. 53
4.4.4 包 ................................................................................................................................................................. 54
5. OOP 面对对象编程 ............................................................................................................................... 55
5.1 类和实例 ........................................................................................................................................................... 56
5.2 数据封装 ........................................................................................................................................................... 57
5.2.1 类的属性 ................................................................................................................................................... 57
5.2.2 访问限制 ................................................................................................................................................... 57
5.3 继承与多态 ....................................................................................................................................................... 58
5.3.1 子承父业 ................................................................................................................................................... 58
5.3.2 多态 ............................................................................................................................................................ 60
5.3.2.1 从继承走向多态 ...................................................................................................................................................60
5.3.2.2 静态语言 vs 动态语言 ......................................................................................................................................61
5.4 获取对象信息 .................................................................................................................................................. 62
5.5 实例属性和类属性 ........................................................................................................................................ 65
5.6 使用__slots__ .................................................................................................................................................... 67
5.6 使用@property ............................................................................................................................................... 68
5.7 多重继承 ........................................................................................................................................................... 70
5.8 定制类 ................................................................................................................................................................ 71
5.8.1 __str__...................................................................................................................................................... 71
3
5.8.2 __repr__ .................................................................................................................................................. 71
5.8.3 __iter__ .................................................................................................................................................... 72
5.8.4 __getitem__ ........................................................................................................................................... 73
5.8.4 __getattr__ ............................................................................................................................................. 74
5.8.5 __call__ .................................................................................................................................................... 76
5.9 枚举类 ................................................................................................................................................................ 78
5.10 元类 .................................................................................................................................................................. 79
5.10.1 type() ........................................................................................................................................................ 79
5.10.2 metaclass ................................................................................................................................................ 80
6. 知错才能改 ............................................................................................................................................. 81
6.1 错误处理 ........................................................................................................................................................... 81
6.1.1 try ................................................................................................................................................................ 81
6.1.2 调用栈 ........................................................................................................................................................ 83
6.1.3 记录错误 ................................................................................................................................................... 84
6.1.4 抛出错误 ................................................................................................................................................... 84
6.2 调试.................................................................................................................................................................... 85
6.2.1 logging ...................................................................................................................................................... 85
6.2.2 IDE ............................................................................................................................................................... 86
4
1.前言
笔者写下《跟我一起写 Python》,主要是想和朋友们一起学习,本文档中有什么说的不
对的地方还请朋友们指正。
本文档的阅读需要一些 C 语言的基础,C 语言课程学习推荐有 b 站浙大翁恺的课程。
2.进入 Python 的世界
2.1 Python 简介
Python 是著名的“龟叔”Guido van Rossum 在 1989 年圣诞节期间,为了打发无聊的圣
诞节而编写的一个编程语言。
这流行的编程语言各有千秋。像 C 语言是可以用来编写操作系统的贴近硬件的语言,
所以,C 语言适合开发那些追求运行速度、充分发挥硬件性能的程序。而 Python 是用来编
写应用程序的高级编程语言。
当你用一种语言开始作真正的软件开发时,你除了编写代码外,还需要很多基本的已经
写好的现成的东西,来帮助你加快开发进度。比如说,要编写一个电子邮件客户端,如果先
从最底层开始编写网络协议相关的代码,那估计一年半载也开发不出来。高级编程语言通常
都会提供一个比较完善的基础代码库,让你能直接调用,比如,针对电子邮件协议的 SMTP
库,针对桌面环境的 GUI 库,在这些已有的代码库的基础上开发,一个电子邮件客户端几
天就能开发出来。
Python 就为我们提供了非常完善的基础代码库,覆盖了网络、文件、GUI、数据库、文
本等大量内容。用 Python 开发,许多功能不必从零编写,直接使用现成的即可。
“人生苦短,我用 Python。”
2.2 环境搭建
2.2.1 安装 Python
使用 ANACONDA 全家桶安装 Python
进入 ANACONDA 的官网:https://www.anaconda.com/
下载对应版本,无脑下一步安装。
5
安装完成后,打开 Anaconda Powershell Prompt
在命令框中输入 python 并回车,出现 python 版本号信息,进入 python 交互模式,它
的提示符是>>>,说明我们配置成功了。
剩余85页未读,继续阅读
资源评论
电子宁采臣
- 粉丝: 155
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- #P0015. 全排列 超级简单
- pta题库答案c语言之排序4统计工龄.zip
- pta题库答案c语言之树结构7堆中的路径.zip
- pta题库答案c语言之树结构3TreeTraversalsAgain.zip
- pta题库答案c语言之树结构2ListLeaves.zip
- pta题库答案c语言之树结构1树的同构.zip
- 基于C++实现民航飞行与地图简易管理系统可执行程序+说明+详细注释.zip
- pta题库答案c语言之复杂度1最大子列和问题.zip
- 三维装箱问题(Three-Dimensional Bin Packing Problem,3D-BPP)是一个经典的组合优化问题
- 以下是一些关于Linux线程同步的基本概念和方法.txt
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功