目录
第 1章初识 Python ·························································································· 1 
1.1认识 Python ····························································································· 1 
1.1.1 Python初识 ···················································································· 2 
1.1.2 Python的特点及应用领域 ·································································· 2 
1.1.3 Python的学习方法 ··········································································· 3 
1.2搭建环境 ································································································· 4 
1.2.1 Python下载 ···················································································· 5 
1.2.2 Python IDLE开发环境 ······································································· 7 
1.2.3 PyCharm开发环境 ··········································································· 8 
1.2.4 Anaconda3开发环境 ········································································10 
1.3打包发布 ································································································16 
1.3.1 pip包管理工具 ···············································································16 
1.3.2 PyInstaller······················································································19 
1.4实训 1:使用环境搭建 ··············································································22【本章习题】 ··································································································22
第 2章编程基础 ·····························································································24 
2.1认识 Python程序和中文编码 ······································································24 
2.2 Python固定语法 ······················································································25 
2.2.1 Python代码块 ················································································25 
2.2.2 Python行处理 ················································································26 
2.2.3 Python标识符及保留字 ····································································28 
2.3 Python基本输入输出 ················································································30 
2.3.1用户输入 ·······················································································30 
2.3.2屏幕输出 ·······················································································32 
2.4 Python变量和数据类型 ·············································································33 
2.4.1变量和赋值 ····················································································34 
基础教程 
2.4.2简单数据类型 ·················································································35 
2.4.3类型转换 ·······················································································40 
2.5 Python的对象和变量 ················································································41 
2.5.1对象的类型与身份 ···········································································42 
2.5.2变量引用对象 ·················································································42 
2.5.3共享引用 ·······················································································43 
2.6 Python运算符 ·························································································45 
2.6.1算术运算符 ····················································································45 
2.6.2比较运算符 ····················································································47 
2.6.3赋值运算符 ····················································································48 
2.6.4位运算符 ·······················································································49 
2.6.5逻辑运算符 ····················································································50 
2.6.6成员运算符 ····················································································51 
2.6.7身份运算符 ····················································································52 
2.6.8运算符优先级 ·················································································52 
2.7实训 2:班级竞选统计 ··············································································54【本章习题】 ··································································································56
第 3章控制流程 ·····························································································58 
3.1条件语句 ································································································58 
3.1.1 if条件语句 ····················································································59 
3.1.2实践运用 ·······················································································62 
3.2循环语句 ································································································63 
3.2.1循环语句概述 ·················································································63 
3.2.2 while循环语句 ···············································································63 
3.2.3 for循环语句 ··················································································65 
3.2.4循环嵌套 ·······················································································66 
3.2.5实践运用 ·······················································································67 
3.3其他语句 ································································································67 
3.3.1 break语句 ·····················································································68 
3.3.2 continue语句··················································································70 
3.3.3 pass语句·······················································································71 
3.3.4 else语句 ·······················································································71 
3.4实训 3:数字金字塔 ·················································································73【本章习题】 ··································································································74
第 4章 Python数据类型 ···················································································76 
4.1 Python序列操作 ······················································································76 
4.2 Python字符串 ·························································································79 
4.2.1 Python字符串操作 ··········································································80 
目录 
4.2.2字符串格式化输出 ···········································································83 
4.2.3三引号 ··························································································85 
4.2.4字符串函数 ····················································································86 
4.3 Python列表 ····························································································95 
4.3.1列表概述 ·······················································································96 
4.3.2列表操作 ·······················································································96 
4.3.3列表函数 ····················································································· 100 
4.4 Python元组 ·························································································· 104 
4.4.1元组概述 ····················································································· 104 
4.4.2元组操作 ····················································································· 105 
4.4.3元组函数 ····················································································· 108 
4.5 Python字典 ·························································································· 109 
4.5.1字典概述 ····················································································· 110 
4.5.2字典操作 ······················································································111 
4.5.3字典函数 ····················································································· 116 
4.6 Python集合 ·························································································· 122 
4.6.1集合概述 ····················································································· 122 
4.6.2集合操作 ····················································································· 123 
4.6.3集合函数 ····················································································· 126 
4.7对象的浅复制与深复制 ··········································································· 127 
4.7.1浅复制 ························································································ 128 
4.7.2深复制 ························································································ 129 
4.8推导式 ································································································· 129 
4.8.1列表推导式 ·················································································· 130 
4.8.2字典推导式 ·················································································· 131 
4.8.3集合推导式 ·················································································· 132 
4.9实训 4:创建学生信息管理系统用户数据 ···················································· 132【本章习题】 ································································································ 133
第 5章代码复用 ―函数 ···············································································136 
5.1 Python函数 ·························································································· 136 
5.1.1函数概念 ····················································································· 137 
5.1.2函数定义 ····················································································· 137 
5.1.3函数调用 ····················································································· 138 
5.1.4函数的嵌套定义 ············································································ 139 
5.2 Python函数参数 ···················································································· 140 
5.2.1参数··························································································· 140 
5.2.2参数传递 ····················································································· 143 
5.2.3函数返回值 ·················································································· 144 
5.3 Python全局变量与局部变量 ····································································· 144 
基础教程 
5.3.1变量作用域 ·················································································· 145 
5.3.2全局变量和局部变量 ······································································ 145 
5.3.3 global语句 ·················································································· 146 
5.3.4 nonlocal语句················································································ 147 
5.4 Python匿名函数 ···················································································· 148 5.5实训 5:使用函数编写学生信息管理系统 ···················································· 149【本章习题】 ································································································ 152
第 6章代码复用 ―模块 ···············································································154 
6.1模块概述 ······························································································ 154 
6.2模块的使用 ··························································································· 155 
6.2.1模块导入 ····················································································· 156 
6.2.2模块定位查找 ··············································································· 158 
6.2.3自定义模块调用 ············································································ 159 
6.3 Python中的包 ······················································································· 160 
6.3.1包的概念 ····················································································· 160 
6.3.2包使用实例 ·················································································· 161 
6.4常用模块介绍 ······················································································· 162 
6.4.1时间与日期 ·················································································· 163 
6.4.2 math库······················································································· 166 
6.4.3 json模块····················································································· 168 
6.5实训 6:使用模块编写学生信息管理系统 ···················································· 170【本章习题】 ································································································ 173
第 7章 Python面向对象 ·················································································175 
7.1面向对象编程简介 ················································································· 175 
7.2类和对象 ······························································································ 177 
7.2.1类的创建 ····················································································· 177 
7.2.2实例对象 ····················································································· 179 
7.2.3类的方法 ····················································································· 179 
7.3类的继承 ······························································································ 182 
7.4类的方法重写 ······················································································· 184 
7.4.1方法重写 ····················································································· 185 
7.4.2运算符重载 ·················································································· 186 
7.5实训 7:使用类编写学生信息管理系统 ······················································· 187【本章习题】 ································································································ 190
第 8章文件处理 ···························································································192 
8.1打开和关闭文件 ···················································································· 192 
8.2文件读写 ······························································································ 196 
目录 
8.3重命名和删除文件 ················································································· 199 
8.3.1 os模块 ······················································································· 199 
8.3.2重命名和删除文件操作 ··································································· 202 
8.4 Python文件夹操作 ················································································· 203 
8.5 csv文件操作 ························································································· 204 
8.5.1  csv数据······················································································ 205 
8.5.2读取 csv数据··············································································· 205 
8.5.3写入.csv文件··············································································· 208 
8.6实训 8:基于文件的学生信息管理系统 ······················································· 209【本章习题】 ································································································ 212
第 9章异常处理 ···························································································214 
9.1异常···································································································· 214 
9.1.1异常概述··························································································· 215 
9.1.2异常的检测与处理 ········································································· 217 
9.2抛出异常 ······························································································ 221 
9.2.1抛出异常处理 ··············································································· 221 
9.2.2用户自定义异常 ············································································ 224 
9.3 with语句 ····························································································· 225 9.4实训 9:实现异常处理的学生信息管理系统 ················································· 226【本章习题】 ································································································ 231
第 10章 MySQL数据库操作 ············································································233 
10.1访问 MySQL数据库·············································································· 234 
10.1.1 pymysql模块安装········································································ 234 
10.1.2事务机制 ··················································································· 234 
10.1.3 Python操作数据库过程及对象 ························································ 235 
10.2数据库操作 ························································································· 236 
10.2.1连接 MySQL数据库····································································· 236 
10.2.2创建数据库表 ············································································· 237 
10.2.3数据库读写 ················································································ 239 
10.3实训 10:基于 MySQL数据库的学生信息管理系统 ······································ 243【本章习题】 ································································································ 247
第 11章计算生态 ··························································································249 
11.1 Turtle标准库 ······················································································· 249 
11.1.1 Turtle基础 ················································································· 250 
11.1.2 Turtle绘图命令 ··········································································· 251 
11.1.3 Turtle命令操作 ··········································································· 252 
11.2 random标准库 ····················································································· 254 
Python基础教程 
11.2.1 random库介绍 ············································································ 255 
11.2.2 random库常用函数 ······································································ 255 
11.3 jieba第三方库 ······················································································ 257 
11.3.1 jieba库简介 ················································································ 258 
11.3.2 jieba库的安装 ············································································· 258 
11.3.3 jieba分词应用 ············································································· 259 
11.3.4 jieba单词统计 ············································································· 259 
11.4 wordcloud第三方库 ·············································································· 260 
11.4.1 wordcloud库安装 ········································································· 261 
11.4.2 wordcloud基本使用 ······································································ 261 
11.5实训 11:运行的时钟 ············································································ 265【本章习题】 ································································································ 267
附录全国计算机等级考试二级 Python语言程序设计考试大纲( 2018年版) ·············269
