没有合适的资源?快使用搜索试试~ 我知道了~
资源详情
资源评论
资源推荐
1
1 Python 基础 ................................................................................. 4
1.1 数据类型和变量 ......................................................................... 4
1.2 字符串和编码 .......................................................................... 8
1.3 使用 list 和 tuple .................................................................... 12
1.4 条件判断 ............................................................................. 16
1.5 循环 ................................................................................. 18
1.6 使用 dict 和 set....................................................................... 19
2 函数 ...................................................................................... 23
2.1 调用函数 ............................................................................. 23
2.2 定义函数 ............................................................................. 24
2.3 函数的参数 ........................................................................... 27
2.4 递归函数 ............................................................................. 33
3 高级特性 ................................................................................... 36
3.1 切片 ................................................................................. 36
3.2 迭代 ................................................................................. 38
3.3 列表生成式 ........................................................................... 39
3.4 生成器 ............................................................................... 41
3.5 迭代器 ............................................................................... 45
4 函数式编程 ................................................................................. 47
4.1 高阶函数 ............................................................................. 47
4.1.1 map/reduce ..................................................................... 48
4.1.2 filter ......................................................................... 51
4.1.3 sorted ......................................................................... 52
4.2 返回函数 ............................................................................. 54
4.3 匿名函数 ............................................................................. 56
4.4 装饰器 ............................................................................... 56
4.5 偏函数 ............................................................................... 59
5 模块 ...................................................................................... 61
5.1 使用模块 ............................................................................. 62
5.2 安装第三方模块 ........................................................................ 64
6 面向对象编程 ............................................................................... 66
6.1 类和实例 ............................................................................. 67
6.2 访问限制 ............................................................................. 69
6.3 继承和多态 ........................................................................... 71
6.4 获取对象信息 ......................................................................... 74
6.5 实例属性和类属性 ...................................................................... 78
7 面向对象高级编程 ........................................................................... 80
7.1 使用__slots__ ........................................................................ 80
7.2 使用@property ........................................................................ 81
7.3 多重继承 ............................................................................. 83
7.4 定制类 ............................................................................... 85
7.5 使用枚举类 ........................................................................... 91
7.6 使用元类 ............................................................................. 93
8 错误、调试和测试 ........................................................................... 98
8.1 错误处理 ............................................................................. 98
8.2 调试 ................................................................................ 104
2
8.3 单元测试 ............................................................................ 107
8.4 文档测试 ............................................................................ 110
9 IO 编程 ................................................................................... 113
9.1 文件读写 ............................................................................ 113
9.2 StringIO 和 BytesIO ................................................................. 115
9.3 操作文件和目录 ....................................................................... 116
9.4 序列化 .............................................................................. 118
10 进程和线程 ............................................................................... 122
10.1 多进程 ............................................................................. 123
10.2 多线程 ............................................................................. 127
10.3 ThreadLocal ....................................................................... 131
10.4 进程 vs 线程 ........................................................................ 133
10.5 分布式进程 ......................................................................... 134
11 正则表达式 ............................................................................... 138
12 常用内建模块 ............................................................................. 141
12.1 datetime .......................................................................... 141
12.2 collections ....................................................................... 144
12.3 base64 ............................................................................ 146
12.4 struct ............................................................................ 148
12.5 hashlib ........................................................................... 149
12.6 itertools ......................................................................... 151
12.7 XML ............................................................................... 153
12.8 HTMLParser ........................................................................ 155
12.9 urllib ............................................................................ 156
13 常用第三方模块 ........................................................................... 160
13.1 PIL ............................................................................... 160
13.2 virtualenv ........................................................................ 161
14 图形界面 ................................................................................. 163
15 网络编程 ................................................................................. 165
15.1 TCP/IP 简介 ........................................................................ 165
15.2 TCP 编程 ........................................................................... 166
15.3 UDP 编程 ........................................................................... 169
16 电子邮件 ................................................................................. 170
16.1 SMTP 发送邮件....................................................................... 171
16.2 POP3 收取邮件....................................................................... 175
17 访问数据库 ............................................................................... 179
17.1 使用 SQLite ........................................................................ 181
17.2 使用 MySQL ......................................................................... 183
17.3 使用 SQLAlchemy .................................................................... 184
18 Web 开发 ................................................................................. 187
18.1 HTTP 协议简介....................................................................... 187
18.2 HTML 简介 .......................................................................... 190
18.3 WSGI 接口 .......................................................................... 193
18.4 使用 Web 框架 ....................................................................... 195
18.5 使用模板 ........................................................................... 197
19 异步 IO .................................................................................. 201
3
19.1 协程 ............................................................................... 201
19.2 asyncio ........................................................................... 203
19.3 async/await ....................................................................... 205
19.4 aiohttp ........................................................................... 206
20 实战 .................................................................................... 208
From Cameocus
4
1 Python 基础
Python 是一种计算机编程语言。计算机编程语言和我们日常使用的自然语言有所不同,最大的区别就是,自然语言在不
同的语境下有不同的理解,而计算机要根据编程语言执行任务,就必须保证编程语言写出的程序决不能有歧义,所以,任
何一种编程语言都有自己的一套语法,编译器或者解释器就是负责把符合语法的程序代码转换成 CPU 能够执行的机器码,
然后执行。Python 也不例外。
Python 的语法比较简单,采用缩进方式,写出来的代码就像下面的样子。
# print absolute value of an integer:
a = 100
if a >= 0:
print(a)
else:
print(-a)
以#开头的语句是注释,注释是给人看的,可以是任意内容,解释器会忽略掉注释。其他每一行都是一个语句,当语句以
冒号:结尾时,缩进的语句视为代码块。
缩进有利有弊。好处是强迫你写出格式化的代码,但没有规定缩进是几个空格还是 Tab。按照约定俗成的管理,应该始终
坚持使用 4 个空格的缩进。缩进的另一个好处是强迫你写出缩进较少的代码,你会倾向于把一段很长的代码拆分成若干函
数,从而得到缩进较少的代码。
缩进的坏处就是“复制-粘贴”功能失效了,这是最坑爹的地方。当你重构代码时,粘贴过去的代码必须重新检查缩进是
否正确。此外,IDE 很难像格式化 Java 代码那样格式化 Python 代码。
最后,请务必注意,Python 程序是大小写敏感的,如果写错了大小写,程序会报错。
Python 使用缩进来组织代码块,请务必遵守约定俗成的习惯,坚持使用 4 个空格的缩进。
在文本编辑器中,需要设置把 Tab 自动转换为 4 个空格,确保不混用 Tab 和空格。
1.1 数据类型和变量
数据类型
计算机顾名思义就是可以做数学计算的机器,因此,计算机程序理所当然地可以处理各种数值。但是,计算机能处理的
远不止数值,还可以处理文本、图形、音频、视频、网页等各种各样的数据,不同的数据,需要定义不同的数据类型。在
Python 中,能够直接处理的数据类型有以下几种:
·整数
Python 可以处理任意大小的整数,当然包括负整数,在程序中的表示方法和数学上的写法一模一样,例如:1,100,-
8080,0,等等。计算机由于使用二进制,所以,有时候用十六进制表示整数比较方便,十六进制用 0x 前缀和 0-9,a-f 表
示,例如:0xff00,0xa5b4c3d2,等等。
·浮点数
浮点数也就是小数,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的,比如,
1.23x10
9
和 12.3x10
8
是完全相等的。浮点数可以用数学写法,如 1.23,3.14,-9.01,等等。但是对于很大或很小的浮
点数,就必须用科学计数法表示,把 10 用 e 替代,1.23x10
9
就是 1.23e9,或者 12.3e8,0.000012 可以写成 1.2e-5,
等等。
整数和浮点数在计算机内部存储的方式是不同的,整数运算永远是精确的(除法难道也是精确的?是的!),而浮点数运
算则可能会有四舍五入的误差。
·字符串
字符串是以单引号'或双引号"括起来的任意文本,比如'abc',"xyz"等等。请注意,''或""本身只是一种表示方式,不
是字符串的一部分,因此,字符串'abc'只有 a,b,c 这 3 个字符。如果'本身也是一个字符,那就可以用""括起来,比如
"I'm OK"包含的字符是 I,',m,空格,O,K 这 6 个字符。
如果字符串内部既包含'又包含"怎么办?可以用转义字符\来标识,比如:
'I\'m \"OK\"!'
表示的字符串内容是:
I'm "OK"!
5
转义字符\可以转义很多字符,比如\n 表示换行,\t 表示制表符,字符\本身也要转义,所以\\表示的字符就是\,可以
在 Python 的交互式命令行用 print()打印字符串看看:
>>> print('I\'m ok.')
I'm ok.
>>> print('I\'m learning\nPython.')
I'm learning
Python.
>>> print('\\\n\\')
\
\
如果字符串里面有很多字符都需要转义,就需要加很多\,为了简化,Python 还允许用 r''表示''内部的字符串默认不
转义,可以自己试试:
>>> print('\\\t\\')
\ \
>>> print(r'\\\t\\')
\\\t\\
如果字符串内部有很多换行,用\n 写在一行里不好阅读,为了简化,Python 允许用'''...'''的格式表示多行内容,可
以自己试试:
>>> print('''line1
... line2
... line3''')
line1
line2
line3
上面是在交互式命令行内输入,注意在输入多行内容时,提示符由>>>变为...,提示你可以接着上一行输入。如果写成
程序,就是:
print('''line1
line2
line3''')
多行字符串'''...'''还可以在前面加上 r 使用,请自行测试。
·布尔值
布尔值和布尔代数的表示完全一致,一个布尔值只有 True、False 两种值,要么是 True,要么是 False,在 Python 中,
可以直接用 True、False 表示布尔值(请注意大小写),也可以通过布尔运算计算出来:
>>> True and True
True
>>> True and False
False
>>> False and False
False
>>> 5 > 3 and 3 > 1
True
or 运算是或运算,只要其中有一个为 True,or 运算结果就是 True:
>>> True or True
True
>>> True or False
True
剩余207页未读,继续阅读
weiyuxi272
- 粉丝: 20
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- main.c
- Unity 创建快捷方式自动启动
- 一分钟一条原创视频,蹭热点撸收益,条条爆款,狂撸各大平台,轻松日入1000+-教程网盘链接提取码下载 .txt
- 51单片机实现万年历,包括闹钟的设置与秒表功能(汇编)
- STM32单片机FPGA毕设电路原理论文报告铁合金电炉单片机电力监控系统的研究
- STM32单片机FPGA毕设电路原理论文报告贴片元件封装机的智能控制系统设计
- STM32单片机FPGA毕设电路原理论文报告体育高考投篮自动测试系统的设计与实现
- STM32单片机FPGA毕设电路原理论文报告提高放疗精度的单片机控制方法
- C++ matplot学习及demo实操
- STM32单片机FPGA毕设电路原理论文报告提高单晶炉加热电源控制电路精度的研究
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论30