Python新手入门必看之作,位居美亚电脑编程热销第一,《Python编程》姊妹篇 遮盖Python 3.3和Python 2.72个版本号,详尽解读各种各样語言特点,并增加很多实例
这书依据Python权威专家Mark Lutz的知名课程培训撰写而成,是便于把握和通过自学的Python語言实例教程。书中以现阶段流行的Python 3.X主导,一起兼具Python 2.X的內容,全方位、系统软件解读Python語言关键专业知识,每一专业知识都是以知识结构图、观念、实例编码的方法详尽进行,循序渐进,由浅入深。一起每章都装有章后练习题、编程训练及详细的解释,而且还装有很多注解、实例和数据图表,有利于你学习培训新的专业技能和推进加重自身的了解。不管你从业哪家行业,这书都为您提供了将来所有Python工作中的必需专业知识。
这书将协助你应用Python编写出高品质、高效率的而且便于与别的語言和小工具集成化的编码。这书依据Python权威专家Mark Lutz的知名课程培训撰写而成,是便于把握和通过自学的Python实例教程。
这书每章节都对Python語言的重要內容做独立解读,而且装有章后练习题、编程训练及详细的解释,还装有很多注解的实例及其数据图表,有利于你学习培训新的专业技能并推进加重自身的了解。第5版应用场景Python27和3.3版本号,一起也适用别的Python版本号。不管你也是编程初学者還是别的计算机语言的杰出开发人员,这书都是就是你学习培训Python的理想化挑选。
这书主题思想:
- 学习培训Python的关键内嵌另一半种类,如大数字、目录和词典。
- 应用Python句子建立和解决另一半,并学习培训Python的通用性英语的语法实体模型。
- 应用涵数降低编码沉余,应用包编码构造保持编码器重。
- 学习培训Python控制模块,进而封裝句子、涵数和别的小工具,便于搭建大中型部件。
- 学习类,即Python用以组织代码的面向对象编程小工具。
- 应用Python的异常处理实体模型和开发环境撰写大中型程序流程。
- 学习培训高級Python小工具,包含装饰设计符、描述符、元类和Unicode的解决等。
目录
- 上册
- 前言1
- 第一部分 使用入门
- 第1章 问答环节 21
- 人们为何使用Python..21
- 软件质量.22
- 开发者效率..23
- Python是一门“脚本语言”吗 23
- 好吧,Python的缺点是什么...25
- 如今谁在使用Python..25
- 其他的Python设计权衡:一些难以把握的方面.....26
- 使用Python可以做些什么.28
- 系统编程.28
- 图形用户界面(GUI)....29
- Internet脚本...29
- 组件集成.30
- 数据库编程..30
- 快速原型.31
- 数值计算和科学计算编程 31
- 更多内容:游戏、图像、数据挖掘、机器人、Excel等 .....31
- Python如何开发并获得支持...32
- 开源的权衡..33
- Python有哪些技术上的优点...33
- 面向对象和函数式....33
- 免费34
- 可移植..34
- 功能强大.35
- 可混合..36
- 相对简单易用36
- 相对简单易学37
- 以Monty Python命名.37
- Python和其他语言比较起来怎么样 .....38
- 本章小结.....39
- 本章习题.....39
- 习题解答.....40
- Python是工程,不是艺术 41
- 第2章 Python如何运行程序 ....43
- Python解释器简介43
- 程序执行.....45
- 程序员的视角45
- Python的视角46
- 执行模型的变体...48
- Python的各种实现 ....49
- 执行优化工具52
- 冻结二进制文件..53
- 未来的可能性54
- 本章小结.....55
- 本章习题.....55
- 习题解答.....56
- 第3章 你应如何运行程序 ..57
- 交互式命令行模式57
- 开始一个交互式会话.57
- Windows平台上的交互式命令行在哪里 ..59
- 系统路径.59
- Python 3.3中的新Windows选项:PATH和启动器 ...60
- 运行的位置:代码目录...61
- 不需要输入的内容:提示符和注释 ...62
- 交互式地运行代码....63
- 为什么要使用交互式命令行模式 .64
- 使用注意:交互命令行模式 ..65
- 系统命令行和文件67
- 第一段脚本..68
- 使用命令行运行文件.69
- 不同的命令行使用方式...70
- 使用注意:命令行和文件 71
- UNIX风格可执行脚本:#!.....72
- UNIX脚本基础....72
- UNIX env查找技巧...73
- Python 3.3 Windows启动器:Windows也有#!了 ....73
- 点击文件图标.75
- 图标点击基础知识....75
- 在Windows上点击图标...76
- Windows上输入的技巧...77
- 其他图标点击的限制.79
- 模块导入和重载...79
- 导入和重载基础知识.80
- 模块的宏观视角:属性...82
- 使用注意:import和reload .....85
- 使用exec运行模块文件.....85
- IDLE用户界面86
- IDLE启动细节.....87
- IDLE基础用法.....88
- IDLE功能特性.....89
- 高级IDLE工具.....90
- 使用注意:IDLE.90
- 其他IDE.92
- 其他启动选项.93
- 嵌入式调用..93
- 冻结二进制可执行文件...94
- 文本编辑器启动方式.94
- 其他的启动方式..95
- 未来的可能..95
- 应该选用哪种方式95
- 调试Python代码..96
- 本章小结.....97
- 本章习题.....97
- 习题解答.....98
- 第一部分练习题...99
- 第二部分 类型和运算
- 第4章 介绍Python对象类型 ..105
- Python知识结构..105
- 为什么要使用内置类型..106
- Python核心数据类型107
- 数字.....108
- 字符串. 110
- 序列操作..... 110
- 不可变性..... 112
- 特定类型的方法 113
- 寻求帮助..... 115
- 字符串编程的其他方式. 116
- Unicode字符串 . 117
- 模式匹配..... 119
- 列表.....120
- 序列操作.....120
- 特定的操作121
- 边界检查.....121
- 嵌套....122
- 推导....122
- 字典.....125
- 映射操作.....125
- 重访嵌套.....126
- 不存在的键:if 测试.....128
- 键的排序:for 循环.129
- 迭代和优化131
- 元组.....132
- 为什么要使用元组..133
- 文件.....133
- 二进制字节文件134
- Unicode文本文件....135
- 其他类文件工具137
- 其他核心类型.....137
- 如何破坏代码的灵活性.139
- 用户定义的类....140
- 剩余的内容141
- 本章小结...141
- 本章习题...141
- 习题解答...142
- 第5章 数值类型 ....143
- 数值类型基础知识....143
- 数值字面量144
- 内置数值工具....146
- Python表达式运算符.....146
- 数字的实际应用.151
- 变量与基础表达式..151
- 数值的显示格式153
- str和repr显示格式...154
- 普通比较与链式比较.....154
- 除法:经典除法、向下取整除法和真除法 .....156
- 整数精度.....160
- 复数....160
- 十六进制、八进制和二进制:字面量与转换 .161
- 按位操作.....163
- 其他内置数值工具..164
- 其他数值类型.....167
- 小数类型.....167
- 分数类型.....169
- 集合....173
- 布尔型180
- 数值扩展...181
- 本章小结...182
- 本章习题...182
- 习题解答...182
- 第6章 动态类型 ....184
- 缺少声明语句的情况184
- 变量、对象和引用..184
- 类型属于对象,而不是变量 186
- 对象的垃圾收集187
- 关于Python垃圾回收的更多讨论 .....188
- 共享引用...189
- 共享引用和在原位置修改 ....190
- 共享引用和相等192
- 动态类型随处可见....193
- “弱”引用194
- 本章小结...194
- 本章习题...194
- 习题解答...195
- 第7章 字符串基础 .196
- 本章范围...196
- Unicode简介197
- 字符串基础197
- 字符串字面量.....199
- 单引号和双引号字符串是一样的 .....200
- 转义序列代表特殊字符.200
- 原始字符串阻止转义.....203
- 三引号编写多行块字符串 ....205
- 实际应用中的字符串206
- 基本操作.....206
- 索引和分片207
- 请留意:分片.... 211
- 字符串转换工具212
- 修改字符串I214
- 字符串方法216
- 方法调用语法....216
- 字符串的方法....217
- 字符串方法示例:修改字符串II 218
- 字符串方法示例:解析文本 220
- 实际应用中的其他常见字符串方法 .220
- 原始string模块的函数(在Python 3.X中删除) ...221
- 字符串格式化表达式223
- 格式化表达式基础..224
- 高级格式化表达式语法.225
- 高级格式化表达式举例.226
- 基于字典的格式化表达式 ....227
- 字符串格式化方法调用..228
- 字符串格式化方法基础.228
- 添加键、属性和偏移量.229
- 高级格式化方法语法.....230
- 高级格式化方法举例.....231
- 与%格式化表达式比较233
- 为什么使用格式化方法.236
- 通用类型分类.....241
- 同一分类中的类型共享同一个操作集....241
- 可变类型能够在原位置修改 242
- 本章小结...242
- 本章习题...243
- 习题解答...243
- 第8章 列表与字典 .245
- 列表.....245
- 列表的实际应用.248
- 基本列表操作....248
- 列表迭代和推导248
- 索引、分片和矩阵..249
- 原位置修改列表250
- 字典.....256
- 字典的实际应用.258
- 字典的基本操作258
- 原位置修改字典259
- 其他字典方法....260
- 示例:电影数据库..262
- 字典用法注意事项..263
- 创建字典的其他方式.....267
- 请留意:字典vs列表.....268
- Python 3.X和2.7中的字典变化 ...269
- 请留意:字典接口..276
- 本章小结...277
- 本章习题...277
- 习题解答...277
- 第9章 元组、文件与其他核心类型 .... 279
- 元组.....280
- 元组的实际应用281
- 为什么有了列表还要元组 ....283
- 重访记录:有名元组.....284
- 文件.....286
- 打开文件.....287
- 使用文件.....288
- 文件的实际应用289
- 文本和二进制文件:一个简要的故事....290
- 在文件中存储Python对象:转换 .....291
- 存储Python原生对象:pickle .....293
- 用JSON格式存储Python对象 .....294
- 存储打包二进制数据:struct .....296
- 文件上下文管理器..297
- 其他文件工具....297
- 核心类型复习与总结299
- 请留意:运算符重载.....300
- 对象灵活性300
- 引用vs复制..301
- 比较、等价性和真值.....303
- Python中True和False的含义 307
- Python的类型层次...309
- 类型的对象309
- Python中的其他类型..... 311
- 内置类型陷阱..... 311
- 赋值创建引用,而不是复制311
- 重复会增加层次深度.....312
- 注意循环数据结构..313
- 不可变类型不可以在原位置改变 .....313
- 本章小结...314
- 本章习题...314
- 习题解答...315
- 第二部分练习题.315
- 第三部分 语句和语法
- 第10章 Python语句简介.321
- 重温Python的知识结构..321
- Python的语句.....322
- 两种不同的if324
- Python增加的元素...325
- Python删除的元素...325
- 为什么采用缩进语法.....327
- 几种特殊情况....329
- 简短示例:交互式循环..331
- 一个简单的交互式循环.331
- 对用户输入做数学运算.333
- 通过测试输入数据来处理错误 ...334
- 用try语句处理错误..335
- 嵌套三层深的代码..337
- 本章小结...338
- 本章习题...338
- 习题解答...338
- 第11章 赋值、表达式和打印 340
- 赋值语句...340
- 赋值语句形式....341
- 序列赋值.....342
- Python 3.X中的扩展序列解包 ....345
- 多目标赋值349
- 增量赋值.....350
- 变量命名规则....353
- Python中的废弃协议.....355
- 表达式语句356
- 表达式语句和原位置修改 ....358
- 打印操作...358
- Python 3.X的print函数..359
- Python 2.X的print语句..362
- 打印流重定向....363
- 版本中立的打印367
- 为什么你要注意:print和stdout .369
- 本章小结...370
- 本章习题...370
- 习题解答...370
- 第12章 if测试和语法规则 .....372
- if语句.372
- 一般形式.....372
- 基础示例.....373
- 多路分支.....373
- 复习Python语法规则375
- 代码块分隔符:缩进规则 ....377
- 语句分隔符:行与行间连接符 ...378
- 一些特殊情况....379
- 真值和布尔测试.381
- if/else三元表达式.....383
- 请留意:布尔值384
- 本章小结...386
- 本章习题...386
- 习题解答...386
- 第13章 while循环和for循环 .. 387
- while循环..387
- 一般形式.....387
- 示例....388
- break、continue、pass和循环的else ..389
- 一般循环形式....389
- pass.....389
- continue.391
- break...391
- 循环的else...392
- 请留意:仿真C 语言的while循环 ....393
- for循环394
- 一般形式.....394
- 示例....395
- 请留意:文件扫描器.....400
- 编写循环的技巧.402
- 计数器循环:range.402
- 序列扫描:while和range vs for ..403
- 序列乱序器:range和len 404
- 非穷尽遍历:range vs分片 ..405
- 修改列表:range vs推导 406
- 并行遍历:zip和map.....407
- 同时给出偏移量和元素:enumerate 410
- 请留意:shell命令及其他 .... 411
- 本章小结...414
- 本章习题...414
- 习题解答...414
- 第14章 迭代和推导 .. 416
- 迭代器:初次探索....417
- 迭代协议:文件迭代器.417
- 手动迭代:iter和next....420
- 其他内置类型可迭代对象 ....423
- 列表推导:初次深入探索....425
- 列表推导基础....426
- 在文件上使用列表推导.427
- 扩展的列表推导语法.....428
- 其他迭代上下文.430
- Python 3.X新增的可迭代对象 .....435
- 对Python 2.X版本代码的影响:利与弊 .435
- range可迭代对象.....436
- map、zip和filter可迭代对象 437
- 多遍迭代器vs单遍迭代器 ....439
- 字典视图可迭代对象.....440
- 其他迭代话题.....441
- 本章小结...442
- 本章习题...442
- 习题解答...442
- 第15章 文档 ...444
- Python文档资源..444
- #注释..445
- dir函数..445
- 文档字符串:__doc__...447
- PyDoc:help函数....450
- PyDoc:HTML报告453
- 改变PyDoc的颜色...456
- 超越文档字符串:Sphinx ....461
- 标准手册集462
- 网络资源.....463
- 已出版的书籍....463
- 常见代码编写陷阱....463
- 本章小结...465
- 本章习题...466
- 习题解答...466
- 第三部分练习题.467
- 第四部分 函数和生成器
- 第16章 函数基础 ..473
- 为何使用函数.....474
- 编写函数...475
- def语句..476
- def语句执行于运行时...477
- 第一个示例:定义和调用....478
- 定义....478
- 调用....478
- Python中的多态479
- 第二个示例:寻找序列的交集 ....480
- 定义....480
- 调用....481
- 重访多态.....482
- 局部变量.....482
- 本章小结...483
- 本章习题...483
- 习题解答...483
- 第17章 作用域 485
- Python作用域基础....485
- 作用域细节486
- 变量名解析:LEGB规则 .....488
- 作用域实例490
- 内置作用域491
- 打破Python 2.X的小宇宙 .....494
- global语句.494
- 程序设计:最少化全局变量 495
- 程序设计:最小化跨文件的修改 .....497
- 其他访问全局变量的方式 ....498
- 作用域和嵌套函数....499
- 嵌套作用域的细节..500
- 嵌套作用域举例500
- 工厂函数:闭包501
- 使用默认值参数来保存外层作用域的状态 .....503
- Python 3.X中的nonlocal语句507
- nonlocal基础.....508
- nonlocal应用.....509
- 为什么选nonlocal?状态保持备选项511
- nonlocal变量的状态:仅适用于Python 3.X .... 511
- 全局变量的状态:只有一份副本 .....512
- 类的状态:显式属性(预习) ...513
- 函数属性的状态:Python 3.X和Python 2.X的异同 ....514
- 请留意:定制open..516
- 本章小结...518
- 本章习题...518
- 习题解答...520
- 第18章 参数 ...521
- 参数传递基础.....521
- 参数和共享引用522
- 避免修改可变参数..524
- 模拟输出参数和多重结果 ....525
- 特殊的参数匹配模式526
- 参数匹配基础....526
- 参数匹配语法....527
- 更深入的细节....528
- 关键字参数和默认值参数的示例 .....529
- 可变长参数的实例..532
- Python 3.X的keyword-only参数 .536
- min提神小例.539
- 满分....540
- 附加分541