| 作者 |
| 黄传祿 张克强 赵越 |
| 丛书名 |
| 零基础学编程 |
| 出版社 |
| 机械工业出版社 |
| ISBN |
| 9787111655350 |
| 简要 |
| 简介 |
| 内容简介书籍计算机书籍 为了能够使广大读者既能够掌握Python语言的基础知识,又能够将Python语言应用于某个特定的领域(如Web开发),本书介绍与Python相关的方方面面,为了便于读者学习,本书每个章节都提供了详尽的例子,结合实例讲解各个知识点。涉及的程序代码都给出了详细的注释,有助于读者轻松领会程序开发的精髓,快速提高开发技能。在学习完本书之后,相信读者能够很好地掌握Python语言,同时可以使用Python语言进行实际项目的开发。本书适合Python爱好者、大中专院校的学生、社会培训班的学生。 |
| 目录 |
| 前言 第一篇 Python语言基础 第1章 进入Python的世界 1 1.1 Python的由来 1 1.2 Python的特性 2 1.3 第一个Python程序 3 1.4 搭建开发环境 4 1.4.1 Python的下载和安装 4 1.4.2 交互式命令行的使用 10 1.5 Python的开发工具 11 1.5.1 PyCharm的使用 11 1.5.2 Eclipse IDE的介绍 13 1.5.3 EditPlus编辑器环境的配置 15 1.6 不同平台下的Python 17 1.7 小结 17 1.8 习题 18 第2章 必须知道的Python基础语法 19 2.1 Python的文件类型 19 2.1.1 源代码 19 2.1.2 字节代码 19 2.1.3 优化代码 20 2.2 Python的编码规范 20 2.2.1 命名规则 20 2.2.2 代码缩进与冒号 23 2.2.3 模块导入的规范 24 2.2.4 使用空行分隔代码 25 2.2.5 正确的注释 26 2.2.6 语句的分隔 28 2.3 变量和常量 30 2.3.1 变量的命名 30 2.3.2 变量的赋值 31 2.3.3 局部变量 32 2.3.4 全局变量 32 2.3.5 常量 34 2.4 数据类型 35 2.4.1 数字 35 2.4.2 字符串 37 2.5 运算符与表达式 38 2.5.1 算术运算符和算术表达式 38 2.5.2 关系运算符和关系表达式 40 2.5.3 逻辑运算符和逻辑表达式 40 2.6 小结 41 2.7 习题 42 第3章 Python的控制语句 43 3.1 结构化程序设计 43 3.2 条件判断语句 44 3.2.1 if条件语句 44 3.2.2 if…elif…else判断语句 46 3.2.3 if语句也可以嵌套 46 3.2.4 switch语句的替代方案 48 3.3 循环语句 50 3.3.1 while循环 50 3.3.2 for循环 51 3.3.3 break和continue语句 53 3.4 结构化程序示例 54 3.5 小结 56 3.6 习题 57 第4章 Python数据结构 58 4.1 元组结构 58 4.1.1 元组的创建 58 4.1.2 元组的访问 59 4.1.3 元组的遍历 61 4.2 列表结构 62 4.2.1 列表的创建 62 4.2.2 列表的使用 64 4.2.3 列表的查找、排序、反转 65 4.2.4 列表实现堆栈和队列 66 4.3 字典结构 68 4.3.1 字典的创建 68 4.3.2 字典的访问 69 4.3.3 字典的方法 71 4.3.4 字典的排序、复制 74 4.3.5 全局字典——sys.modules模块 76 4.4 序列 77 4.5 小结 79 4.6 习题 79 第5章 模块与函数 80 5.1 Python程序的结构 80 5.2 模块 81 5.2.1 模块的创建 81 5.2.2 模块的导入 81 5.2.3 模块的属性 83 5.2.4 模块的内置函数 83 5.2.5 自定义包 86 5.3 函数 88 5.3.1 函数的定义 88 5.3.2 函数的参数 89 5.3.3 函数的返回值 92 5.3.4 函数的嵌套 95 5.3.5 递归函数 97 5.3.6 lambda函数 98 5.3.7 Generator函数 99 5.4 小结 101 5.5 习题 101 第6章 字符串与正则表达式 102 6.1 常见的字符串操作 102 6.1.1 字符串的格式化 102 6.1.2 字符串的转义符 104 6.1.3 字符串的合并 106 6.1.4 字符串的截取 107 6.1.5 字符串的比较 108 6.1.6 字符串的反转 109 6.1.7 字符串的查找和替换 110 6.1.8 字符串与日期的转换 112 6.2 正则表达式应用 113 6.2.1 正则表达式简介 113 6.2.2 使用re模块处理正则表达式 115 6.3 小结 121 6.4 习题 121 第7章 使用Python处理文件 122 7.1 文件的常见操作 122 7.1.1 文件的创建 122 7.1.2 文件的读取 124 7.1.3 文件的写入 126 7.1.4 文件的删除 127 7.1.5 文件的复制 128 7.1.6 文件的重命名 129 7.1.7 文件内容的搜索和替换 130 7.1.8 文件的比较 131 7.1.9 配置文件的访问 133 7.2 的常见操作 135 7.2.1 创建和删除 135 7.2.2 的遍历 136 7.3 文件处理示例——文件属性浏览程序 137 7.4 小结 139 7.5 习题 140 第8章 面向对象编程 141 8.1 面向对象的概述 141 8.2 类和对象 142 8.2.1 类和对象的区别 142 8.2.2 类的定义 143 8.2.3 对象的创建 143 8.3 属性和方法 144 8.3.1 类的属性 144 8.3.2 类的方法 146 8.3.3 内部类的使用 148 8.3.4 __init__方法 149 8.3.5 __del__方法 150 8.3.6 垃圾回收机制 151 8.3.7 类的内置方法 152 8.3.8 方法的动态特性 156 8.4 继承 157 8.4.1 使用继承 157 8.4.2 抽象基类 159 8.4.3 多态性 160 8.4.4 多重继承 161 8.4.5 Mixin机制 163 8.5 运算符的重载 164 8.6 Python与设计模式 167 8.6.1 设计模式简介 167 8.6.2 设计模式示例——Python实现工厂方法 167 8.7 小结 168 8.8 习题 169 第9章 异常处理与程序调试 170 9.1 异常的处理 170 9.1.1 Python中的异常 170 9.1.2 try…except的使用 171 9.1.3 try…finally的使用 173 9.1.4 使用raise抛出异常 174 9.1.5 自定义异常 174 9.1.6 assert语句的使用 175 9.1.7 异常信息 176 9.2 使用自带IDLE调试程序 177 9.3 使用Eclipse IDE调试程序 179 9.3.1 新建工程 179 9.3.2 配置调试 179 9.3.3 设置断点 182 9.4 小结 183 9.5 习题 184 第10章 Python数据库编程 185 10.1 数据库简介 185 10.2 Python DATABASE API简介 186 10.3 Python连接数据库的专用模块 187 10.3.1 数据库专用模块的下载与安装 187 10.3.2 Python连接Oracle数据库 190 10.3.3 Python 连接MySQL数据库 191 10.3.4 Python 连接SQL Server数据库 194 10.3.5 Python 连接SQLite数据库 196 10.4 使用Python的持久化模块读写数据 197 10.5 小结 198 10.6 习题 198 第二篇 Python的GUI程序设计 第11章 Python的GUI开发 199 11.1 Python的GUI开发选择 199 11.1.1 认识Python内置的GUI库Tkinter 199 11.1.2 使用Tkinter进行开发 200 11.1.3 认识PyQT GUI库 203 11.1.4 使用PyQT GUI库进行开发 203 11.2 小结 204 11.3 习题 204 第12章 GUI编程与Tkinter相关组件介绍 205 12.1 GUI程序开发简介 205 12.2 Tkinter及其主要组件 206 12.2.1 在程序中使用Tkinter 206 12.2.2 顶层窗口 206 12.2.3 标签 207 12.2.4 框架 207 12.2.5 按钮 208 12.2.6 输入框 208 12.2.7 单选按钮 209 12.2.8 复选按钮 209 12.2.9 消息 210 12.2.10 滚动条 211 12.2.11 列表框 211 12.3 Tkinter所有组件简介 212 12.4 小结 212 12.5 习题 213 第三篇 Python的Web开发 第13章 Python的HTML应用 215 13.1 HTML介绍 215 13.1.1 HTML的历史 215 13.1.2 SGML、HTML、XHTML、HTML5的关系 216 13.1.3 HTML的标签 216 13.1.4 HTML的框架组成 217 13.2 URL的处理 218 13.2.1 统一资源定位符 218 13.2.2 URL的解析 219 13.2.3 URL的拼合 221 13.2.4 URL的分解 222 13.2.5 URL的编解码 223 13.2.6 中文的编解码 225 13.2.7 查询参数的编码 226 13.3 CGI的使用 228 13.3.1 CGI介绍 228 13.3.2 获取CGI环境信息 230 13.3.3 解析用户的输入 232 13.4 获取HTML资源 235 13.4.1 使用urlopen和urlretrieve获取HTTP资源 235 13.4.2 分析返回资源的相关信息 240 13.4.3 使用http.client模块获取资源 242 13.5 HTML文档的解析 244 13.6 小结 246 13.7 习题 246 第14章 Python和XML 247 14.1 XML介绍 247 14.1.1 XML的演进历史 247 14.1.2 XML的优点和限制 248 14.1.3 XML技术的Python支持 249 14.2 XML文档概览和验证 250 14.2.1 XML文档的基础概念 250 14.2.2 XML文档的结构良好性验证 251 14.2.3 XML文档的有效性验证 253 14.3 分析XML文档结构 255 14.3.1 XML的元素和标签 256 14.3.2 元素的属性 258 14.3.3 XML的名字 259 14.3.4 字符实体 261 14.3.5 CDATA段 262 14.3.6 注释 264 14.3.7 处理指令 265 14.3.8 XML定义 266 14.4 使用SAX处理XML文档 266 14.4.1 SAX介绍 266 14.4.2 SAX处理的组成部分 267 14.5 使用DOM处理XML文档 271 14.5.1 DOM介绍 271 14.5.2 xml.dom模块中的接口操作 272 14.5.3 对XML文档的操作 280 14.6 小结 286 14.7 习题 286 第15章 Python的Web开发——Django框架的应用 287 15.1 常见的Web开发框架 287 15.2 MVC模式 290 15.2.1 MVC模式介绍 290 15.2.2 MVC模式的优缺点 290 15.2.3 Django框架中的MVT 291 15.3 Django开发环境的搭建 292 15.3.1 Django框架的安装 292 15.3.2 数据库的配置 293 15.4 Django框架的基本应用 294 15.4.1 Web应用的创建 294 15.4.2 Django中的开发服务器 296 15.4.3 创建数据库 297 15.4.4 生成Django应用 298 15.4.5 创建数据模型 299 15.4.6 URL设计 300 15.4.7 创建视图 302 15.4.8 模板系统 303 15.5 Django框架的高级应用 305 15.5.1 管理界面 305 15.5.2 生成数据库数据 307 15.5.3 Session功能 308 15.6 小结 310 15.7 习题 310 第四篇 Python的其他应用 第16章 敏捷方法学在Python中的应用——测试驱动开发 311 16.1 测试驱动开发 311 16.1.1 测试驱动开发模式 311 16.1.2 TDD的优势 312 16.1.3 TDD的使用步骤 313 16.2 unittest框架 314 16.2.1 unittest模块介绍 314 16.2.2 构建测试用例 315 16.2.3 构建测试固件 316 16.2.4 组织多个测试用例 318 16.2.5 构建测试套件 319 16.2.6 重构代码 321 16.2.7 执行测试 322 16.3 使用doctest进行测试 324 16.3.1 doctest模块介绍 324 16.3.2 构建可执行文档 325 16.3.3 执行doctest测试 326 16.4 小结 328 16.5 习题 328 第17章 Python中的进程和线程 329 17.1 进程和线程 329 17.1.1 进程和线程的概念 329 17.1.2 Python中对于进程和线程处理的支持 330 17.2 Python下的进程编程 331 17.2.1 进程运行环境 331 17.2.2 创建进程 332 17.2.3 终止进程 333 17.3 使用subprocess模块管理进程 334 17.3.1 使用Popen类管理进程 334 17.3.2 调用外部系统命令 337 17.3.3 替代其他进程创建函数 337 17.4 进程间的信号机制 338 17.4.1 信号的处理 338 17.4.2 信号使用的规则 340 17.5 多线程概述 340 17.5.1 什么是多线程 341 17.5.2 线程的状态 341 17.5.3 Python中的线程支持 341 17.6 生成和终止线程 342 17.6.1 使用_thread模块 342 17.6.2 使用threading.Thread类 344 17.7 管理线程 346 17.7.1 线程状态转移 346 17.7.2 主线程对子线程的控制 347 17.7.3 线程中的局部变量 348 17.8 线程之间的同步 349 17.8.1 临界资源和临界区 349 17.8.2 锁机制 351 17.8.3 条件变量 352 17.8.4 信号量 355 17.8.5 同步队列 355 17.8.6 线程同步小结 356 17.9 小结 357 17.10 习题 357 第18章 基于Python的系统管理 358 18.1 增强的交互式环境IPython 358 18.1.1 IPython介绍 358 18.1.2 IPython的安装 359 18.1.3 IPython的启动 360 18.1.4 IPython的环境配置 360 18.2 和IPython的简单交互 360 18.2.1 IPython中的输入和输出 360 18.2.2 输出提示符的区别 361 18.2.3 输出提示符有区别的原因 362 18.3 IPython中的magic函数 363 18.3.1 magic函数的使用和构造 364 18.3.2 管理 364 18.3.3 对象信息的收集 368 18.3.4 magic函数小结 370 18.4 IPython适合于系统管理的特点 371 18.4.1 Tab补全 371 18.4.2 历史记录功能 372 18.4.3 执行外部系统命令和运行文件 374 18.4.4 对象查看和自省 377 18.4.5 直接编辑代码 379 18.4.6 设置别名和宏 381 18.5 使用Python进行文件管理 383 18.5.1 文件的比较 383 18.5.2 文件的归档 384 18.5.3 文件的压缩 387 18.6 使用Python定时执行任务 389 18.6.1 使用休眠功能 389 18.6.2 使用sched模块来定时执行任务 389 18.7 小结 390 18.8 习题 390 第19章 Python和网络编程 391 19.1 网络模型介绍 391 19.1.1 OSI简介 391 19.1.2 TCP/IP简介 392 19.2 Socket应用 393 19.2.1 Socket基础 393 19.2.2 Socket的工作方式 393 19.3 服务器端和客户端通信 394 19.3.1 服务器端的构建 394 19.3.2 客户端的构建 399 19.4 异步通信方式 400 19.4.1 使用Fork方式 400 19.4.2 使用线程方式 401 19.4.3 使用异步IO方式 402 19.4.4 使用asyncore模块 405 19.5 Twisted网络框架 408 19.5.1 Twisted框架介绍 408 19.5.2 Twisted框架下服务器端的实现 409 19.5.3 Twisted框架下服务器端的其他处理 410 19.6 小结 413 19.7 习题 413 第20章 常见的Python网络应用 414 20.1 使用FTP传输文件 414 20.1.1 FTP的工作原理和Python库支持 414 20.1.2 FTP的登录和退出 415 20.1.3 FTP的数据传输 416 20.2 使用POP3获取邮件 418 20.2.1 POP3协议介绍 418 20.2.2 poplib模块的使用 419 20.3 使用SMTP发送邮件 420 20.3.1 SMTP协议介绍 420 20.3.2 smtplib模块的使用 420 20.4 使用Telnet远程登录 422 20.4.1 Telnet协议介绍和Python库支持 422 20.4.2 telnetlib模块的使用 422 20.5 小结 423 20.6 习题 423 第21章 图像处理 424 21.1 图像处理相关概念 424 21.1.1 Python下的图像处理包 424 21.1.2 Pillow支持的图像文件格式 425 21.1.3 图像处理中的其他概念 426 21.2 基本的图像处理 427 21.2.1 图像的读写操作 427 21.2.2 获取图像信息 428 21.2.3 图像文件格式的转换 429 21.2.4 图像的裁剪和合成 431 21.2.5 图像的变换 433 21.3 图像处理的高级应用 435 21.3.1 图像的通道操作 435 21.3.2 对图像的增强 438 21.3.3 Pillow中的内置滤镜 440 21.4 小结 441 21.5 习题 441 第22章 Windows下的Python开发 442 22.1 组件对象模型 442 22.1.1 组件对象模型介绍 442 22.1.2 COM结构 443 22.1.3 COM对象的交互 443 22.2 Python对COM技术的支持 444 22.2.1 Python中的Windows扩展:PyWin32 444 22.2.2 客户端COM组件 445 22.2.3 实现COM组件 446 22.3 Windows下的常见Python应用 449 22.3.1 对Word的自动访问 449 22.3.2 对Excel的自动访问 451 22.3.3 对PowerPoint的自动访问 452 22.3.4 对Outlook的自动访问 454 22.4 小结 455 22.5 习题 455 |