作者 |
詹姆斯·R.佩恩 蒋子阳 |
丛书名 |
出版社 |
机械工业出版社 |
ISBN |
9782104161425 |
简要 |
简介 |
内容简介书籍计算机书籍 ---------------------------8079861 - Python青少年编程:像超级英雄一样学习--------------------------- 本书通过有趣的示例介绍学习Python编程所需的全部内容。在了解Python之前,将从基础开始学习。介绍构建自己的web站点、进行白帽黑客操作、查找代码bug和错误并创建游戏,包括使用Python通过字符滚动制作角色扮演类的游戏等。本书的每一章都是轻松和通俗的,读起来就像一直跟一个很酷的老师学习一样。 ---------------------------8075162 - Python青少年编程魔法课堂(案例+视频教学版)--------------------------- 本书是一本写给青少年学习Python编程的图书。书中介绍了50个左右的编程案例,带领读者掌握Python语言的基础语法,并初步体验项目案例的开发过程。本书共39章,分两部分。第1部分为“Python编程基础案例”,包括的案例有解鸡兔同笼问题、打印九九乘法表、用冒泡法给成绩排序、做个万年历、做个简易的通讯录、续写斐波那契数列、解汉诺塔问题等。第2部分为“Python编程进阶案例”,包括的案例有制作用按钮操作的计算器、制作Q版单位换算小工具、绘制哆啦A梦、制作轻量级画图板、绘制小猪佩奇、制作桌面动态时钟和数显时钟、绘制二维图表和三维图表、制作益智五子棋游戏等。本书行文诙谐幽默,案例丰富、实用性强,特别适合青少年作为Python编程的兴趣读物阅读,也适合想要探索Python语言的入门读者阅读。另外,本书还可以作为中小学编程教育课的教材使用。 |
目录 |
[套装书具体书目] 8075162 - Python青少年编程魔法课堂(案例+视频教学版) - 9787111666554 - 机械工业出版社 - 定价 99 8079861 - Python青少年编程:像超级英雄一样学习 - 9787111679110 - 机械工业出版社 - 定价 89 ---------------------------8079861 - Python青少年编程:像超级英雄一样学习--------------------------- 译者序 前 言 致 谢 作者简介 技术评审员简介 第1章 计算机编程与Python概述 1 1.1 编程语言概述 2 1.2 Python概述 2 1.3 Python与其他编程语言有什么不同 3 1.4 Python的优点 3 1.5 Python的使用者 4 1.6 你的第一个Python程序 4 1.7 安装Python 5 1.7.1 在Windows上安装Python 5 1.7.2 在其他操作系统上安装Python 10 1.8 本章小结 11 第2章 语法基础 12 2.1 运算符优先级 13 2.2 数据类型:了解你的敌人 15 2.3 数字数据类型转换 18 2.4 什么是变量 19 2.5 超级英雄生成器3000 22 2.6 本章小结 25 第3章 字符串 26 3.1 注释 26 3.1.1 块注释 28 3.1.2 行内注释 28 3.1.3 注释的其他用法 29 3.2 字符串处理 29 3.2.1 字符串和变量的使用 31 3.2.2 长字符串 33 3.2.3 多行字符串 33 3.2.4 格式化字符串 34 3.3 给你的武器库引进一个新的武器:列表 36 3.3.1 修改列表 38 3.3.2 列表的其他方法 39 3.4 本章小结 41 第4章 做决策 42 4.1 什么是做决策 43 4.2 条件语句 44 4.2.1 if语句 44 4.2.2 布尔逻辑和比较运算符 47 4.2.3 else 语句 49 4.2.4 elif 语句 49 4.2.5 逻辑运算符 52 4.3 嵌套 54 4.4 本章小结 57 第5章 循环和逻辑 59 5.1 什么是循环 59 5.2 循环限制 63 5.3 for 循环 64 5.4 for循环的更多趣事 67 5.5 break、continue和pass语句 68 5.6 本章小结 71 第6章 学有所用 73 6.1 创建你的第一个真正的程序 73 6.2 导入模块 74 6.3 创建变量 74 6.4 定义列表 75 6.5 介绍性文本和接受用户输入 76 6.6 制造悬念 76 6.7 随机生成超级英雄的名字 78 6.8 快速检查 79 6.9 随机超能力 81 6.10 完成程序 83 6.11 超级英雄生成器3000的完整代码 85 第7章 通过函数、模块和内置对象节省时间 91 7.1 定义模块 92 7.1.1 内置对象 92 7.1.2 包 95 7.1.3 创建自己的模块 96 7.2 常见的内置函数 99 7.2.1 字符串函数 99 7.2.2 数字函数 101 7.3 练习你的新技能 103 7.3.1 字符串函数示例 103 7.3.2 数字函数示例 104 7.4 本章小结 105 第8章 类和对象 106 8.1 什么是OOP 106 8.2 什么是类 107 8.3 什么是对象 108 8.4 创建第一个类 108 8.5 创建第一个对象 109 8.6 改进超级英雄生成器3000 110 8.6.1 继承、子类和其他 117 8.6.2 添加附加功能 123 8.7 改进后的新版超级英雄生成器3000 126 8.8 本章小结 130 第9章 引入其他数据结构 132 9.1 更多数据结构 132 9.2 什么是元组 134 9.3 元组函数 136 9.4 更多元组函数139 9.5 元组示例 141 9.6 使用字典 144 9.7 字典方法 145 9.8 更多字典函数 146 9.9 其他字典方法 148 9.10 字典代码示例 149 9.11 本章小结 151 第10章 Python文件 153 10.1 Python中文件的使用 154 10.2 文件类型 156 10.3 使用Python创建文本文件 156 10.4 Python中的文件读取 158 10.5 关于文件读写的注意事项 160 10.6 文件内容追加 161 10.7 的使用 163 10.8 奖励环节 167 10.9 FunWithFiles.py 168 10.10 WorkingWithDirectories.py 169 10.11 本章小结 170 第11章 Python游戏编程 172 11.1 Python电子游戏编程 173 11.2 Python可以编写的游戏类型 174 11.3 pygame介绍 174 11.4 安装pygame 175 11.5 设置pygame游戏开发基本框架 176 11.6 添加到我们的游戏框架中 177 11.7 向pygame中添加图片和精灵 179 11.8 向pygame游戏窗口添加文本 182 11.9 在pygame中绘制图形 186 11.10 添加更多的事件 188 11.11 本章小结 196 第12章 动画游戏 197 12.1 在pygame中创建动画 197 12.2 碰撞检测:碰壁反弹 203 12.3 碰撞检测:窗口边界检测 203 12.4 两个物体碰撞 206 12.5 本章小结 211 第13章 错误处理 212 13.1 发现错误 213 13.2 错误类型 216 13.2.1 语法错误 217 13.2.2 逻辑错误 217 13.2.3 异常 218 13.2.4 try-except-else块 220 13.3 使用finally 221 13.4 创建自定义异常 222 13.5 日志 224 13.6 Python中的调试工具 226 13.7 处理错误的最后一个提示 227 13.8 本章小结 227 第14章 Python职业 229 14.1 使用Python 230 14.2 Python的职业道路 231 14.2.1 Beta测试员 231 14.2.2 代码调试员/错误定位员 231 14.2.3 数据科学家 232 14.2.4 软件开发人员/软件工程师 232 14.2.5 电子游戏开发者 233 14.2.6 移动端开发 233 14.2.7 Web开发和Web应用程序 233 14.2.8 系统管理员 234 14.2.9 研究、教学等 234 14.3 常见的Python面试题 234 14.3.1 你能告诉我Python的一些主要特性吗 235 14.3.2 元组和列表之间的区别是什么 235 14.3.3 什么是继承 235 14.3.4 如何在Python中生成随机值 235 14.3.5 如何在Python中创建列表、元组和字典 236 14.3.6 局部变量和全局变量之间有什么区别 236 14.3.7 Python提供的不同数据类型有哪些 236 14.3.8 什么是GUI?哪个Python库最适合GUI开发 236 14.3.9 如何在Python中打开文件 236 14.3.10 如何列出模块中的所有函数 237 14.4 其他Python面试问题 237 14.5 最佳编程实践 237 14.5.1 遵循风格指南 238 14.5.2 发现问题,立即解决(现在而不是以后) 238 14.5.3 文档就是一切 239 14.5.4 使用代码库和包 239 14.5.5 经常测试 240 14.5.6 选择一项:缩进或空格 240 14.5.7 课程很棒但并非一切都需要成为一体 240 14.6 Python的发展前景 241 14.7 Python中的术语 241 ---------------------------8075162 - Python青少年编程魔法课堂(案例+视频教学版)--------------------------- 前言 第1篇 Python编程基础案例 第1章 使用Python打印简单内容 2 1.1 初识Python的IDLE 2 1.2 在IDLE中打印“Python真好玩!” 3 1.3 创建及保存Python文件 4 第2章 小小的Python计算器 7 2.1 从加减乘除入手:写计算表达式 7 2.2 保存输入的数字:变量 8 2.3 小小的Python计算器成品 9 2.4 课后小练习 11 第3章 巧用数字解谜题——阴影面积 12 3.1 问题描述:阴影面积是多少 12 3.2 使用更精确的π:导入math模块 13 3.3 计算结果的近似处理:浮点数的精度控制 15 3.4 课后小练习 17 第4章 巧用数字解谜题——对折细绳 19 4.1 问题描述:对折并剪断细绳 19 4.2 表示每次剪断后的结果:初识分数 20 4.3 得到任意剪断n次后的结果 22 4.4 课后小练习 23 第5章 巧用数字解谜题——鸡兔同笼 25 5.1 问题描述:鸡兔各几只 25 5.2 合理的逻辑控制:循环结构和判断结构 26 5.3 鸡兔同笼问题再升级 31 5.4 课后小练习 33 第6章 趣味数字游戏 34 6.1 奇数、偶数各几何:while和for的较量 34 6.2 质数、合数有哪些:break语句和嵌套的循环 37 6.3 课后小练习 39 第7章 循环和判断的魅力——背乘法表 41 7.1 回忆九九乘法表 41 7.2 用最熟悉的办法:for循环结构嵌套 42 7.3 换一种办法:别样的while循环结构 44 7.4 课后小练习 46 第8章 循环和判断的魅力——成绩排序 47 8.1 厘清思路:排序过程当如何 47 8.2 最直接的办法:用for循环完成冒泡排序 48 8.3 换一种办法:用while循环完成冒泡排序 51 8.4 课后小练习 52 第9章 挖掘列表的潜能——别样索引 53 9.1 最末位的成绩:从后向前的索引顺序 53 9.2 前(后)一段的成绩:用索引截取列表 55 9.3 特定区间的成绩:列表分片 56 第10章 挖掘列表的潜能——常规修改 58 10.1 给grade追加新成绩:增加列表成员 58 10.2 去掉grade中的成绩:删除列表成员 60 10.3 调整grade中的成绩:给列表成员排序 61 第11章 给排序小工具添加实用功能1 63 11.1 输入学号和成绩:input()函数和split()函数 63 11.2 保存学号和成绩:append()函数 65 11.3 把学号与成绩保存在一起:zip()函数和元组 67 第12章 给排序小工具添加实用功能2 71 12.1 按学号查成绩:使用字典 71 12.2 又见冒泡排序:列表的二维索引 74 12.3 大功告成 76 12.4 课后小练习 78 第13章 例说元组的使用 80 13.1 创建新的元组 80 13.2 对元组使用索引 81 13.3 获取成员的索引 82 13.4 对元组成员计数 83 第14章 例说字典的使用 85 14.1 创建新的字典 85 14.2 获取字典中的成员 86 14.3 增/改字典中的成员 88 14.4 删除字典中的成员 89 第15章 几个循环中的小技巧 90 15.1 range()函数的另类用法 90 15.2 zip()函数与map()函数 92 15.3 陌生的enumerate()函数 95 第16章 函数,原来你是这样的 98 16.1 从定义一个函数着手:def语句 98 16.2 调用函数要留心:多个种类的参数 100 16.3 小试牛刀:把成绩排序写进函数里 103 16.4 课后小练习 105 第17章 灵活的函数——做个万年历 107 17.1 闰年还是平年:函数的返回值 107 17.2 这个月有几天 109 17.3 距离1900年的第一天已经过去了多久 110 17.4 终于完成万年历 111 第18章 灵活的函数——做个简易通讯录 114 18.1 通讯录总览:初识SQLite数据库 114 18.2 完成通讯录的菜单和新建联系人的功能 116 18.3 完成查询联系人信息的功能 117 18.4 完成修改联系人信息的功能 118 18.5 完成删除联系人的功能 120 18.6 完成显示全部联系人信息的功能 121 18.7 把所有的功能拼装起来 121 第19章 灵活的函数——写斐波那契数列 124 19.1 探索斐波那契数列之谜 124 19.2 续写斐波那契数列:函数的递归调用 126 19.3 课后小练习 128 第20章 灵活的函数——解汉诺塔问题 129 20.1 从最简单的情况入手 129 20.2 由简入繁,摸清圆盘的挪动规律 131 20.3 用Python玩转汉诺塔:又见递归函数 132 20.4 课后小练习 134 第21章 揭开类的神秘面纱 137 21.1 从一个汽车类开始:定义一个类 137 21.2 让类代替字典:创建类的实例 139 21.3 为什么说类是面向对象的 141 21.4 课后小练习 143 第22章 面向对象的类——升级通讯录 144 22.1 升级开始:定义一个Contact类 144 22.2 添加展示操作菜单的类方法 145 22.3 添加新建/查询联系人的类方法 146 22.4 添加修改/删除联系人的类方法 147 22.5 添加显示所有联系人的类方法 149 22.6 添加程序的执行入口 149 22.7 课后小练习 151 第23章 面向对象的类——发纸牌比大小游戏 153 23.1 从一张牌开始:定义Card类 153 23.2 负责洗牌和发牌:定义Deck类 155 23.3 有两名玩家:定义Player类 156 23.4 开始游戏:定义Game类 156 23.5 试玩扑克牌游戏 158 第24章 面向对象的类——继承了什么 160 24.1 国产车或合资车:父类、子类 160 24.2 从父类继承:继承了哪些 162 24.3 修改继承类的方法:重载 163 第25章 面向对象的类——做个员工数据库 166 25.1 定义相关的类 166 25.2 创建类的实例 168 25.3 保存类的实例:初识shelve模块 170 第2篇 Python编程进阶案例 第26章 捕捉不到的按钮 174 26.1 空白的窗口:初识tkinter模块 174 26.2 放一个按钮:Button控件 175 26.3 鼠标指,按钮跑:按钮响应鼠标事件 178 26.4 课后小练习 181 第27章 Q版单位换算小工具 182 27.1 从整体界面设计入手 182 27.2 把全部控件都安排到位 183 27.3 把换算功能写成函数 184 27.4 课后小练习 188 第28章 用按钮操作的小小计算器 189 28.1 先进行外观设计 189 28.2 创建窗口及放置显示面板 190 28.3 放置计算器的按键 193 28.4 思考一下:有哪些事件需要响应 196 28.5 全新的事件响应办法:lambda回调 199 28.6 把所有的工作结合起来 201 28.7 题外话:谈谈lambda表达式 203 第29章 绘制一幅卡通画 204 29.1 创建空白画布:Canvas组件 204 29.2 夜晚的格调:用深色填充画布 206 29.3 小插曲:试做一个颜色对照板 209 29.4 夜空,繁星:绘制五角星 211 29.5 夜空,弯月:绘制圆 215 29.6 夜景,群山与草木:绘制矩形 217 第30章 绘制动漫人物——哆啦A梦 219 30.1 哆啦A梦的整体形象 219 30.2 一切从头开始 220 30.3 头的下面是身体 222 30.4 身体之后是四肢 223 30.5 别忘了还有铃铛 224 第31章 自制轻量级画图板 226 31.1 预览画图板成品 226 31.2 从定义一个类着手 228 31.3 创建画图板的菜单 230 31.4 让画图板能用鼠标进行操作 232 31.5 大功告成,试用画图板 233 第32章 绘制太极图案 237 32.1 与turtle模块的初次相识 237 32.2 厘清绘制太极图案的思路 238 32.3 绘制太极图案的左半边 239 32.4 绘制太极图案的右半边 241 第33章 绘制可爱的小猪佩奇 243 33.1 观察小猪佩奇,思考绘制过程 243 33.2 绘制小猪佩奇的头部 245 33.3 绘制小猪佩奇的身体 250 33.4 绘制小猪佩奇的四肢 251 33.5 绘制小猪佩奇的尾巴 253 第34章 制作一个桌面动态时钟 255 34.1 做个什么样的桌面动态时钟 255 34.2 从绘制时钟的表盘刻度开始 256 34.3 初始化钟表的指针 258 34.4 让指针开始旋转 259 34.5 添加日期和星期显示 263 第35章 制作一个数显时钟 265 35.1 做个什么样的数显时钟 265 35.2 从能够显示的数字开始 267 35.3 定时刷新时钟的显示 269 第36章 做个简易的图片浏览器 274 36.1 预览简易图片浏览器成品 274 36.2 要看哪张图片:tkinter的文件选择窗口 276 36.3 把选择的图片显示出来 277 36.4 克服缺陷:PIL模块来帮忙 278 36.5 另辟蹊径:初识matplotlib模块 280 第37章 精彩纷呈的图表1 283 37.1 折线图:从中发现趋势 283 37.2 散点图:化简后的折线图 286 37.3 柱状图:让比较更直观 288 37.4 叠加的柱状图:看看比例 290 37.5 饼图:让比例更清晰 293 第38章 精彩纷呈的图表2 298 38.1 三维散点图:更酷炫的散点图 298 38.2 三维平面图:凸显立体效果 300 第39章 益智五子棋游戏 304 39.1 初识pygame模块 304 39.2 绘制出棋盘是第一步 306 39.3 支持落子是第二步 309 39.4 区分黑白子是第三步 312 39.5 判断输赢是第四步 315 附录A 安装Python 320 附录B 程序流程图图例 327 附录C Python的表达式操作符 329 附录D 安装pygame模块 331 附录E 安装一款IDE软件代替IDLE 333 |