学习编程第一步零基础上手Python开发
《学习编程第一步 零基础上手Python开发》是Rob Miles所撰写的关于学习Python程式语言的入门书籍,由清华大学出版社出版。
基本介绍
- 书名:学习编程第一步零基础上手Python开发
- 作者:[英] Rob Miles
- 译者:曹瑜 郭俊凤
- ISBN:9787302502494
- 定价:79.80
- 出版社:清华大学出版社
- 出版时间:2018.06.01
内容简介
《学习编程第一步 零基础上手Python开发》介绍了进行Python编程所必须进行的技能,包括:编程基础,从简单的数据存储到複杂和有用的程式;Python如何在Visual Studio环境下工作;一些高级技术,包括类、基于对象的解决方案的设计;使用Python的各种库;构建Web套用和基于云的套用,以及GUI和游戏;测试和调试代码;理解职业开发的方方面面,构建自己的技能库。
作者简介
Rob Miles在英国赫尔大学讲授编程课程的年限超过30年。他是一位Microsoft MVP,对编写程式和创造新事物充满热情。即使在空闲时间,也不忘继续编写代码。他喜欢编写代码,然后运行这些代码,看看会有什幺结果。他认为编程最富有创意,让你可以一探究竟。他相信,编程可以构筑未来。
编辑推荐
《学习编程第一步 零基础上手Python开发》是一本编程启蒙书籍,将为你的编程之旅指明方向,指引你朝着正确的、有用的目标前进。本书共分三部分。第I部分介绍如何安装和使用编程工具,讲述Python 程式语言的基本元素。第II 部分描述如何利用Python 程式语言的特点构建複杂的应用程式;指导你设计、测试Python 应用程式,并为程式编写文档。第III 部分介绍如何使用软体库在图形用户界面中创建应用程式,如何在网路套用中将Python 程式用作客户端和伺服器。最后创建充满魅力的游戏。
即使你没有编程经验,也可在本书的指导下编写出解决实际问题的软体。《学习编程第一步 零基础上手Python开发》完全颠覆了编程入门书籍,紧跟时代,为当今的编程新手提供深入的讲解,令其他书籍望尘莫及。本书编排新颖,从“代码分析”“易错之处” “动手练习”到“专家点津”,无不令人耳目一新。无论你是初出茅庐的新手,还是经验丰富的编程人员,本书都将赋予你能量、激动和快乐!当你看到其他用户乐于使用你写的程式做一些有用的事情时,你的内心将是十分甜蜜的。
即使你没有编程经验,也可在本书的指导下编写出解决实际问题的软体。《学习编程第一步 零基础上手Python开发》完全颠覆了编程入门书籍,紧跟时代,为当今的编程新手提供深入的讲解,令其他书籍望尘莫及。本书编排新颖,从“代码分析”“易错之处” “动手练习”到“专家点津”,无不令人耳目一新。无论你是初出茅庐的新手,还是经验丰富的编程人员,本书都将赋予你能量、激动和快乐!当你看到其他用户乐于使用你写的程式做一些有用的事情时,你的内心将是十分甜蜜的。
图书目录
第Ⅰ部分 编程基础知识
第1章 开始使用Python 3
1.1 什幺是Python 3
1.1.1 Python的起源 4
1.1.2 Python版本 4
1.2 打造使用Python的场所 5
1.2.1 获取工具 5
1.2.2 Python(适用于Windows PC) 6
1.3 启动Python 8
1.4 本章小结 11
第2章 Python和编程 13
2.1 编程人员的工作 13
2.1.1 编程和规划生日聚会 13
2.1.2 编程和问题 14
2.1.3 编程人员要善于沟通 15
2.2 计算机用于处理数据 16
2.2.1 机器、计算机和人 16
2.2.2 程式用于处理数据 18
2.2.3 Python用于处理数据 19
2.3 数据和信息 23
2.4 使用Python函式 27
2.4.1 ord函式 27
2.4.2 chr函式 28
2.4.3 使用bin函式探索数据存储 29
2.5 本章小结 30
第3章 Python程式结构 33
3.1 编写首个Python程式 33
3.1.1 使用IDLE运行Python程式 33
3.1.2 使用print函式获得程式输出 37
3.2 使用Python库 42
3.2.1 random库 42
3.2.2 time库 45
3.3 Python注释 46
3.4从桌面运行Python47
3.5添加一些snaps函式48
3.5.1添加pygame库48
3.5.2snaps函式49
3.6本章小结52
第4章使用变数55
4.1Python中的变数55
4.2使用文本59
4.2.1标记字元串的开始和结束61
4.2.2文本中的转义字元62
4.2.3使用input函式读取文本63
4.3使用数值65
4.3.1将字元串转换为整型值65
4.3.2整数和实数66
4.3.3实数和浮点数67
4.3.4将字元串转换为浮点值71
4.3.5执行计算72
4.3.6在浮点数和整数之间转换73
4.4snaps函式get_weather_temp75
4.5本章小结76
第5章在程式中制定决策79
5.1布尔数据79
5.1.1创建布尔变数79
5.1.2布尔表达式81
5.1.3比较值83
5.1.4布尔运算86
5.2if结构88
5.2.1嵌套if条件95
5.2.2使用逻辑96
5.3使用决策创建应用程式96
5.3.1设计用户界面97
5.3.2实现用户界面98
5.3.3测试用户输入99
5.3.4完成程式99
5.4导入snaps库100
5.5本章小结103
第6章使用循环执行重複操作105
6.1while结构105
6.1.1使用while重複执行一系列语句105
6.1.2处理无效的用户输入109
6.1.3使用异常检查无效编号输入112
6.1.4异常和编号读取114
6.1.5处理多个异常115
6.1.6跳出循环116
6.1.7使用continue返回到循环顶部117
6.1.8重複循环计数118
6.2for循环结构120
6.3使用snaps製作数字闹钟123
6.4本章小结124
第7章使用函式简化程式125
7.1函式的组成125
7.1.1使用参数给函式提供信息128
7.1.2函式调用的返回值135
7.2构建可重用的函式141
7.2.1创建文本输入函式141
7.2.2为函式添加帮助信息142
7.2.3创建数值输入函式144
7.2.4将函式转换为Python模组147
7.2.5使用IDLE调试器148
7.3本章小结153
第8章存储数据集合155
8.1列表和销售金额跟蹤155
8.1.1单独变数的局限性157
8.1.2Python中的列表158
8.1.3在列表中读取值160
8.1.4使用for循环显示列表161
8.2将程式重构为函式162
8.2.1创建占位函式165
8.2.2创建用户选单165
8.3使用冒泡排序法167
8.3.1使用测试数据初始化列表167
8.3.2按降序排序列表168
8.3.3按升序排序列表172
8.3.4查找最大值和最
小值173
8.3.5计算销售总额和平均销售额174
8.3.6完成程式174
8.4在档案中存储数据175
8.4.1写入档案176
8.4.2写入销售金额179
8.4.3从档案读取180
8.4.4读取销售金额182
8.4.5处理档案错误183
8.5存储数据表185
8.6将列表用作查找表188
8.7元组189
8.8本章小结191
第II部分高级编程
第9章使用类存储数据197
9.1生成TinyContacts套用197
9.1.1生成原型198
9.1.2在不同的列表中存储联繫人详细信息200
9.1.3使用类存储联繫人详细信息202
9.1.4在TinyContacts程式中使用Contact类205
9.1.5编辑联繫人信息207
9.1.6使用pickle将联繫人信息保存到档案中215
9.1.7使用pickle从档案载入联繫人信息217
9.1.8给TinyContacts程式添加save和load函式218
9.1.9设定类实例219
9.2字典223
9.2.1字典管理225
9.2.2从函式返回字典225
9.2.3使用字典存储联繫人信息226
9.3本章小结227
第10章使用类创建活动对象229
10.1创建TimeTracker229
10.1.1为类添加数据特性230
10.1.2创建聚合对象231
10.1.3为类创建方法特性232
10.1.4为方法添加验证代码234
10.1.5防止数据特性受到破坏243
10.1.6受保护的方法246
10.2创建类属性246
10.3扩展类设计250
10.4类中的__str__方法257
10.5TimeTracker中的法庭工作时长跟蹤260
10.5.1Pythonmap函式264
10.5.2Pythonjoin方法269
10.6使用snaps製作音乐270
10.7本章小结273
第11章设计面向对象的解决方案277
11.1FashionShop应用程式277
11.1.1应用程式数据设计279
11.1.2面向对象的设计279
11.1.3创建超类和子类282
11.1.4数据设计总结295
11.1.5实现应用程式行为302
11.1.6将对象作为组件305
11.2创建FashionShop组件306
11.3设计类314
11.4Python集合315
11.4.1集合和标籤318
11.4.2集合与类层次结构的对比321
11.5本章小结324
第12章Python应用程式327
12.1高级函式327
12.1.1函式引用327
12.1.2使用lambda表达式332
12.1.3叠代器函式和yield语句335
12.1.4使用任意实参数量的函式340
12.2模组和包343
12.2.1Python模组343
12.2.2给BTCInput添加readme函式343
12.2.3将模组作为程式运行344
12.2.4检测模组是否作为程式执行344
12.2.5创建Python包345
12.2.6导入包中的模组347
12.3程式测试350
12.3.1Pythonassert语句351
12.3.2Pythonunittest模组352
12.3.3创建测试355
12.4查看程式文档356
12.5本章小结361
第III部分Python实战
第13章Python和图形用户界面365
13.1VisualStudioCode365
13.1.1安装VisualStudioCode366
13.1.2在VisualStudioCode中安装PythonExtension366
13.1.3创建项目资料夹367
13.1.4创建程式档案368
13.1.5调试程式369
13.1.6其他Python编辑器373
13.2使用Tkinter创建图形用户界面373
13.2.1创建图形应用程式379
13.2.2格线布局380
13.2.3创建事件处理器382
13.2.4创建mainloop383
13.2.5处理GUI中的错误383
13.2.6显示讯息框385
13.2.7在画布上绘製388
13.2.8Tkinter事件391
13.2.9创建绘製程式392
13.2.10输入多行文本394
13.2.11在Frame中组合显示元素396
13.2.12使用GUI创建可编辑的StockItem396
13.2.13创建一个Listbox选择器402
13.2.14包含GUI的应用程式408
13.3本章小结410
第14章Python程式用作网路客户端413
14.1计算机网路413
14.2从Python使用Web422
14.2.1读取网页422
14.2.2使用基于Web的数据423
14.3本章小结426
第15章Python程式用作网路伺服器429
15.1在Python中创建Web伺服器429
15.1.1一台基于套接字的小型伺服器429
15.1.2PythonWeb伺服器433
15.1.3通过档案支持网页435
15.1.4从Web用户获取信息439
15.2在Web上託管Python应用程式443
15.3本章小结443
第16章使用pygame创建游戏445
16.1开始使用pygame445
16.2使用pygame绘图451
16.2.1图像档案类型451
16.2.2将图像载入到游戏中452
16.2.3使图像能够移动454
16.3从pygame获取用户输入455
16.4创建游戏Sprite457
16.4.1添加玩家Sprite461
16.4.2控制玩家Sprite463
16.4.3添加CrackerSprite464
16.4.4添加大量Sprite实例465
16.4.5捕获薄脆饼乾466
16.4.6添加西红柿杀手469
16.5完成游戏472
16.5.1添加启动萤幕472
16.5.2结束游戏475
16.5.3游戏记分476
16.6本章小结477