Python学习手册 原书第5版(2册)

$ 102.90

如果你想动手编写高效、高质量并且很容易与其他语言和工具集成的代码,本书将快速地帮助你利用Python提高效率。本书基于Python专家的流程培训课程编写,内容通俗易懂。本书包含很多注释的例子和插图,以帮助你开始使用Python2.7和3.3。每章都包含关于Python语言的重要组成部分的一节课。本书主要内容:了解Python的主要内置对象类型,如数字、列表和字典;创建和处理对象的Python语句,学习Python的一般语法模型;利用Python的基本程序工具的结构和重用代码;了解Python模块:语句包、函数和其他工具;探索Python的面向对象的编程工具,用于构建代码;了解异常处理模型和开发工具编写较大的程序;探索优选的Python工具,包括装饰符、描述符、元类、Unicode的处理。

More than 20 In stock - 邮寄至 澳洲、新西兰(最快7个工作日送达)。目前由于疫情,物流会有一些延迟,详情请看首页通知。

SKU: 1201780966 分类:

Description

  商品基本信息,请以下列介绍为准
商品名称:   Python学习手册 原书第5版(2册)
作者:   (美)马克·卢茨(Mark Lutz) 著 秦鹤,林明 译
译者:   秦鹤,林明
ISBN号:   9787111603665
出版社:   机械工业出版社
商品类型:   图书

  其他参考信息(以实物为准)
  装帧:平装   开本:   语种:语种
  出版时间:2018年10月01日   版次:1   页数:1467
  印刷时间:   印次:1   字数:

  作者简介
Mark Lutz是一位重量的Python培训讲师。他是Python畅销书籍的作者,同时从1992年起就成为Python社区的引领者。Mark有着30余年的软件开发经验,也是《Python编程》《Python袖珍指南》等书的作者。

  内容简介
如果你想动手编写高效、高质量并且很容易与其他语言和工具集成的代码,本书将快速地帮助你利用Python提高效率。本书基于Python专家的流程培训课程编写,内容通俗易懂。本书包含很多注释的例子和插图,以帮助你开始使用Python2.7和3.3。每章都包含关于Python语言的重要组成部分的一节课。本书主要内容:了解Python的主要内置对象类型,如数字、列表和字典;创建和处理对象的Python语句,学习Python的一般语法模型;利用Python的基本程序工具的结构和重用代码;了解Python模块:语句包、函数和其他工具;探索Python的面向对象的编程工具,用于构建代码;了解异常处理模型和开发工具编写较大的程序;探索优选的Python工具,包括装饰符、描述符、元类、Unicode的处理。

  目录
上册
前言1
部分使用入门
章问答环节21
人们为何使用Python21
软件质量22
开发者效率23
Python是一门“脚本语言”吗23
好吧,Python的缺点是什么25
如今谁在使用Python25
其他的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
以MontyPython命名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
Python33中的新Windows选项:PATH和启动器60
运行的位置:代码目录61
不需要输入的内容:提示符和注释62
交互式地运行代码63
为什么要使用交互式命令行模式64
使用注意:交互命令行模式65
系统命令行和文件67
段脚本68
使用命令行运行文件69
不同的命令行使用方式70
使用注意:命令行和文件71
UNIX风格可执行脚本:#!72
UNIX脚本基础72
UNIXenv查找技巧73
Python33Windows启动器:Windows也有#!了73
点击文件图标75
图标点击基础知识75
在Windows上点击图标76
Windows上输入的技巧77
其他图标点击的限制79
模块导入和重载79
导入和重载基础知识80
模块的宏观视角:属性82
使用注意:import和reload85
使用exec运行模块文件85
IDLE用户界面86
IDLE启动细节87
IDLE基础用法88
IDLE功能特性89
不错IDLE工具90
使用注意:IDLE90
其他IDE92
其他启动选项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
字符串方法示例:修改字符串II218
字符串方法示例:解析文本220
实际应用中的其他常见字符串方法220
原始string模块的函数(在Python3X中删除)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
Python3X和27中的字典变化269
请留意:字典接口276
本章小结277
本章习题277
习题解答277
第9章元组、文件与其他核心类型279
元组280
元组的实际应用281
为什么有了列表还要元组283
重访记录:有名元组284
文件286
打开文件287
使用文件288
文件的实际应用289
文本和二进制文件:一个简要的故事290
在文件中存储Python对象:转换291
存储Python原生对象:pickle293
用JSON格式存储Python对象294
存储打包二进制数据:struct296
文件上下文管理器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
第三部分语句和语法
0章Python语句简介321
重温Python的知识结构321
Python的语句322
两种不同的if324
Python增加的元素325
Python删除的元素325
为什么采用缩进语法327
几种特殊情况329
简短示例:交互式循环331
一个简单的交互式循环331
对用户输入做数学运算333
通过测试输入数据来处理错误334
用try语句处理错误335
嵌套三层深的代码337
本章小结338
本章习题338
习题解答338
1章赋值、表达式和打印340
赋值语句340
赋值语句形式341
序列赋值342
Python3X中的扩展序列解包345
多目标赋值349
增量赋值350
变量命名规则353
Python中的废弃协议355
表达式语句356
表达式语句和原位置修改358
打印操作358
Python3X的print函数359
Python2X的print语句362
打印流重定向363
版本中立的打印367
为什么你要注意:print和stdout369
本章小结370
本章习题370
习题解答370
2章if测试和语法规则372
if语句372
一般形式372
基础示例373
多路分支373
复习Python语法规则375
代码块分隔符:缩进规则377
语句分隔符:行与行间连接符378
一些特殊情况379
真值和布尔测试381
if/else三元表达式383
请留意:布尔值384
本章小结386
本章习题386
习题解答386
3章while循环和for循环387
while循环387
一般形式387
示例388
break、continue、pass和循环的else389
一般循环形式389
pass389
continue391
break391
循环的else392
请留意:仿真C语言的while循环393
for循环394
一般形式394
示例395
请留意:文件扫描器400
编写循环的技巧402
计数器循环:range402
序列扫描:while和rangevsfor403
序列乱序器:range和len404
非穷尽遍历:rangevs分片405
修改列表:rangevs推导406
并行遍历:zip和map407
同时给出偏移量和元素:enumerate410
请留意:shell命令及其他411
本章小结414
本章习题414
习题解答414
4章迭代和推导416
迭代器:初次探索417
迭代协议:文件迭代器417
手动迭代:iter和next420
其他内置类型可迭代对象423
列表推导:初次深入探索425
列表推导基础426
在文件上使用列表推导427
扩展的列表推导语法428
其他迭代上下文430
Python3X新增的可迭代对象435
对Python2X版本代码的影响:利与弊435
range可迭代对象436
map、zip和filter可迭代对象437
多遍迭代器vs单遍迭代器439
字典视图可迭代对象440
其他迭代话题441
本章小结442
本章习题442
习题解答442
5章文档444
Python文档资源444
#注释445
dir函数445
文档字符串:__doc__447
PyDoc:help函数450
PyDoc:HTML报告453
改变PyDoc的颜色456
超越文档字符串:Sphinx461
标准手册集462
网络资源463
已出版的书籍463
常见代码编写陷阱463
本章小结465
本章习题466
习题解答466
第三部分练习题467
第四部分函数和生成器
6章函数基础473
为何使用函数474
编写函数475
def语句476
def语句执行于运行时477
个示例:定义和调用478
定义478
调用478
Python中的多态479
第二个示例:寻找序列的交集480
定义480
调用481
重访多态482
局部变量482
本章小结483
本章习题483
习题解答483
7章作用域485
Python作用域基础485
作用域细节486
变量名解析:LEGB规则488
作用域实例490
内置作用域491
打破Python2X的小宇宙494
global语句494
程序设计:最少化全局变量495
程序设计:最小化跨文件的修改497
其他访问全局变量的方式498
作用域和嵌套函数499
嵌套作用域的细节500
嵌套作用域举例500
工厂函数:闭包501
使用默认值参数来保存外层作用域的状态503
Python3X中的nonlocal语句507
nonlocal基础508
nonlocal应用509
为什么选nonlocal?状态保持备选项511
nonlocal变量的状态:仅适用于Python3X511
全局变量的状态:只有一份副本512
类的状态:显式属性(预习)513
函数属性的状态:Python3X和Python2X的异同514
请留意:定制open516
本章小结518
本章习题518
习题解答520
8章参数521
参数传递基础521
参数和共享引用522
避免修改可变参数524
模拟输出参数和多重结果525
特殊的参数匹配模式526
参数匹配基础526
参数匹配语法527
更深入的细节528
关键字参数和默认值参数的示例529
可变长参数的实例532
Python3X的keyword-only参数536
min提神小例539
满分540
附加分541
结论542
通用set函数542
模拟Python3Xprint函数544
使用keyword-only参数546
请留意:关键字参数547
本章小结548
本章习题548
习题解答549
9章函数的不错话题550
函数设计概念550
递归函数552
用递归求和552
编码替代方案553
循环语句vs递归554
处理任意结构555
函数对象:属性和注解558
间接函数调用:“一等”对象559
函数自省560
函数属性561
Python3X中的函数注解562
匿名函数:lambda564
lambda表达式基础564
为什么使用lambda566
如何(不)让Python代码变得晦涩难懂568
作用域:lambda也能嵌套569
请留意:lambda回调570
函数式编程工具570
在可迭代对象上映射函数:map571
选择可迭代对象中的元素:filter573
合并可迭代对象中的元素:reduce573
本章小结575
本章习题575
习题解答575
第20章推导和生成577
列表推导与函数式编程工具577
列表推导与map578
使用filter增加测试和循环嵌套579
示例:列表推导与矩阵582
不要滥用列表推导:简单胜于复杂(KISS)584
请留意:列表推导和map585
生成器函数与表达式587
生成器函数:yieldvsreturn587
生成器表达式:当可迭代对象遇见推导语法592
生成器函数vs生成器表达式597
生成器是单遍迭代对象599
Python33的yieldfrom扩展600
内置类型、工具和类中的值生成601
实例:生成乱序序列604
不要过度使用生成器:明确胜于隐晦(EIBTI)609
示例:用迭代工具模拟zip和map611
为什么你要注意:单遍迭代616
推导语法总结617
作用域及推导变量617
理解集合推导和字典推导619
集合与字典的扩展推导语法620
本章小结621
本章习题621
习题解答621
第21章基准测试623
计时迭代可选方案623
自己编写的计时模块624
33版本中新的计时器调用627
计时脚本628
计时结果630
计时模块可选方案633
其他建议636
用timeit为迭代和各种Python计时637
timeit基础用法637
基准测试模块和脚本:timeit641
基准测试脚本结果643
基准测试的更多乐趣646
其他基准测试主题:pystones650
函数陷阱651
局部变量是被静态检测的651
默认值参数和可变对象653
没有return语句的函数655
其他函数陷阱655
本章小结656
本章习题656
习题解答656
第四部分练习题657
第五部分模块和包
第22章模块:宏伟蓝图663
为什么使用模块664
Python程序架构664
如何组织一个程序665
导入和属性665
标准库模块667
import如何工作667
1搜索668
2编译(可选)668
3运行669
字节码文件:Python32及以上版本的__pycache__670
实际应用中的字节码文件模型671
模块搜索路径672
配置搜索路径674
搜索路径的变化674
syspath列表675
模块文件选择676
第三方工具:distutils678
本章小结678
本章习题679
习题解答679
第23章模块代码编写基础680
模块的创建680
模块文件名680
其他种类的模块681
模块的使用681
import语句681
from语句682
from*语句682
导入只发生一次683
import和from是赋值语句684
import和from的等价性685
from语句潜在的陷阱686
模块命名空间687
文件产生命名空间687
命名空间字典:__dict__689
属性名称的点号运算689
导入与作用域690
命名空间的嵌套691
重新加载模块692
reload基础693
reload示例694
请留意:模块重新加载695
本章小结696
本章习题696
习题解答696
第24章模块包698
包导入基础698
包和搜索路径设置699
__init__py包文件700
……
下册

Additional information

Weight 2218.0 g
Dimensions 23.3 × 17.8 × 0.7 cm
作者

出版社

机械工业出版社

页数

1467

版次

1

出版日期

2018-10-01

装帧

平装

开本

16开

印次

1

isbn

9787111603665

印刷时间

2018-10-01

商品编码

1201780966

查看邮寄详情

我们的优势

  1. 可购买到超过25万种简体中文书。
  2. 快速邮寄-购买超过2KG的书便可自动升级为特快邮寄,发货后约7个工作日送达。
  3. 空运运输-所有书都是使用国际空运运输(不用在海上漂几个月)。
  4. 快速、简单的图书预订服务 -没有找到想要的书?我们会在1~2个工作日增加到网站上供您下单。
  5. 除网站外,还能微信直接留言下单/预订。
  6. 方便快速友好的咨询方式:微信(微信不打扰承诺),每天至少12小时在线(10am-10pm)。
  7. 新书介绍,原创书评(我们亲自读过并觉得不错的书;如果不合书友们的喜好,还望见谅;欢迎在书评下面留言:)
  8. 因为热爱,我们认真的对待每一本书