Python零基础入门学习-水木书荟 pdf 百度云免费下载

《Python零基础入门学习-水木书荟 pdf 百度云免费下载》

【产品特色】

《Python零基础入门学习-水木书荟 pdf 百度云免费下载》

内容简介

  《Python零基础入门学习-水木书荟》适合学习Python3的入门读者,也适用对编程一无所知,但渴望用编程改变世界的朋友们!《Python零基础入门学习-水木书荟》提倡理解为主,应用为王。因此,只要有可能,小甲鱼(作者)都会通过《Python零基础入门学习-水木书荟》中生动的实例来让大家理解概念。

虽然《《Python零基础入门学习-水木书荟》》是一本入门书籍,但《《Python零基础入门学习-水木书荟》》的“野心”可并不止于“初级水平”的教学。《《Python零基础入门学习-水木书荟》》前半部分是基础的语法特性讲解,后半部分围绕着Python3在爬虫、Tkinter和游戏开发等实例上的应用。

编程知识深似海,小甲鱼没办法仅通过《《Python零基础入门学习-水木书荟》》将所有的知识都灌输给你,但能够做到的是培养你对编程的兴趣,提高你编写代码的水平,以及锻炼你的自学能力。最后,《《Python零基础入门学习-水木书荟》》贯彻的核心理念是: 实用、好玩,还有参与。

目录

第1章就这么愉快地开始吧

1.1获得Python

1.2从IDLE启动Python

1.3失败的尝试

1.4尝试点儿新的东西

1.5为什么会这样

第2章用Python设计第一个游戏

2.1第一个小游戏

2.2缩进

2.3BIF

第3章成为高手前必须知道的一些基础知识

3.1变量

3.2字符串

3.3原始字符串

3.4长字符串

3.5改进我们的小游戏

3.6条件分支

3.7while循环

3.8引入外援

3.9闲聊数据类型

3.9.1整型

3.9.2浮点型

3.9.3布尔类型

3.9.4类型转换

3.9.5获得关于类型的信息

3.10常用操作符

3.10.1算术操作符

3.10.2优先级问题

3.10.3比较操作符

3.10.4逻辑操作符

第4章了不起的分支和循环

4.1分支和循环

4.2课堂小练习

4.3结果分析

4.4Python可以有效避免“悬挂else”

4.5条件表达式(三元操作符)

4.6断言

4.7while循环语句

4.8for循环语句

4.9range()

4.10break语句

4.11continue语句

第5章列表、元组和字符串

5.1列表: 一个“打了激素”的数组

5.1.1创建列表

5.1.2向列表添加元素

5.1.3从列表中获取元素

5.1.4从列表删除元素

5.1.5列表分片

5.1.6列表分片的进阶玩法

5.1.7一些常用操作符

5.1.8列表的小伙伴们

5.1.9关于分片“拷贝”概念的补充

5.2元组: 戴上了枷锁的列表

5.2.1创建和访问一个元组

5.2.2更新和删除元组

5.3字符串

5.3.1各种内置方法

5.3.2格式化

5.4序列

第6章函数

6.1Python的乐高积木

6.1.1创建和调用函数

6.1.2函数的参数

6.1.3函数的返回值

6.2灵活即强大

6.2.1形参和实参

6.2.2函数文档

6.2.3关键字参数

6.2.4默认参数

6.2.5收集参数

6.3我的地盘听我的

6.3.1函数和过程

6.3.2再谈谈返回值

6.3.3函数变量的作用域

6.4内嵌函数和闭包

6.4.1global关键字

6.4.2内嵌函数

6.4.3闭包(closure)

6.5lambda表达式

6.6递归

6.6.1递归是“神马”

6.6.2写一个求阶乘的函数

6.6.3这帮小兔崽子

6.6.4汉诺塔

第7章字典和集合

7.1字典: 当索引不好用时

7.1.1创建和访问字典

7.1.2各种内置方法

7.2集合: 在我的世界里,你就是唯一

7.2.1创建集合

7.2.2访问集合

7.2.3不可变集合

第8章永久存储

8.1文件: 因为懂你,所以永恒

8.1.1打开文件

8.1.2文件对象的方法

8.1.3文件的关闭

8.1.4文件的读取和定位

8.1.5文件的写入

8.1.6一个任务

8.2文件系统: 介绍一个高大上的东西

8.3pickle: 腌制一缸美味的泡菜

第9章异常处理

9.1你不可能总是对的

9.2tryexcept语句

9.2.1针对不同异常设置多个except

9.2.2对多个异常统一处理

9.2.3捕获所有异常

9.3tryfinally语句

9.4raise语句

9.5丰富的else语句

9.6简洁的with语句

第10章图形用户界面入门

10.1导入EasyGui

10.2使用EasyGui

10.3修改默认设置

第11章类和对象

11.1给大家介绍对象

11.2对象=属性+方法

11.3面向对象编程

11.3.1self是什么

11.3.2你听说过Python的魔法方法吗

11.3.3公有和私有

11.4继承

11.4.1调用未绑定的父类方法

11.4.2使用super函数

11.5多重继承

11.6组合

11.7类、类对象和实例对象

11.8到底什么是绑定

11.9一些相关的BIF

第12章魔法方法

12.1构造和析构

12.1.1__init__(self[, …])

12.1.2__new__(cls[, …])

12.1.3__del__(self)

12.2算术运算

12.2.1算术操作符

12.2.2反运算

12.2.3增量赋值运算

12.2.4一元操作符

12.3简单定制

12.4属性访问

12.5描述符(property的原理)

12.6定制序列

12.7迭代器

12.8生成器(乱入)

第13章模块

13.1模块就是程序

13.2命名空间

13.3导入模块

13.4__name__=’__main__’

13.5搜索路径

13.6包

13.7像个极客一样去思考

第14章论一只爬虫的自我修养

14.1入门

14.2实战

14.2.1下载一只猫

14.2.2翻译文本

14.3隐藏

14.3.1修改UserAgent

14.3.2延迟提交数据

14.3.3使用代理

14.4Beautiful Soup

14.5正则表达式

14.5.1re模块

14.5.2通配符

14.5.3反斜杠

14.5.4字符类

14.5.5重复匹配

14.5.6特殊符号及用法

14.5.7元字符

14.5.8贪婪和非贪婪

14.5.9反斜杠+普通字母=特殊含义

14.5.10编译正则表达式

14.5.11编译标志

14.5.12实用的方法

14.6异常处理

14.6.1URLError

14.6.2HTTPError

14.6.3处理异常

14.7安装Scrapy

14.8Scrapy爬虫之初窥门径

14.8.1Scrapy框架

14.8.2创建一个Scrapy项目

14.8.3定义Item容器

14.8.4编写爬虫

14.8.5爬

14.8.6取

14.8.7在Shell中尝试Selector选择器

14.8.8使用XPath

14.8.9提取数据

14.8.10使用item

14.8.11存储内容

第15章GUI的最终选择: Tkinter

15.1Tkinter之初体验

15.2Label组件

15.3Button组件

15.4Checkbutton组件

15.5Radiobutton组件

15.6LabelFrame组件

15.7Entry组件

15.8Listbox组件

15.9Scrollbar组件

15.10Scale组件

15.11Text组件

15.11.1Indexes用法

15.11.2Marks用法

15.11.3Tags用法

15.12Canvas组件

15.13Menu组件

15.14Menubutton组件

15.15OptionMenu组件

15.16Message组件

15.17Spinbox组件

15.18PanedWindow组件

15.19Toplevel组件

15.20事件绑定

15.21事件序列

15.21.1type

15.21.2modifier

15.22Event对象

15.23布局管理器

15.23.1pack

15.23.2grid

15.23.3place

15.24标准对话框

15.24.1messagebox(消息对话框)

15.24.2filedialog(文件对话框)

15.24.3colorchooser(颜色选择对话框)

第16章Pygame: 游戏开发

16.1安装Pygame

16.2初步尝试

16.3解惑

16.3.1什么是Surface对象

16.3.2将一个图像绘制到另一个图像上是怎么一回事

16.3.3移动图像是怎么一回事

16.3.4如何控制游戏的速度

16.3.5Pygame的效率高不高

16.3.6我应该从哪里获得帮助

16.4事件

16.5提高游戏的颜值

16.5.1显示模式

16.5.2全屏才是王道

16.5.3使窗口尺寸可变

16.5.4图像的变换

16.5.5裁剪图像

16.5.6转换图片

16.5.7透明度分析

16.6绘制基本图形

16.6.1绘制矩形

16.6.2绘制多边形

16.6.3绘制圆形

16.6.4绘制椭圆形

16.6.5绘制弧线

16.6.6绘制线段

16.7动画精灵

16.7.1创建精灵

16.7.2移动精灵

16.8碰撞检测

16.8.1尝试自己写碰撞检测函数

16.8.2sprite模块提供的碰撞检测函数

16.8.3实现完美碰撞检测

16.9播放声音和音效

16.10响应鼠标

16.10.1设置鼠标的位置

16.10.2自定义鼠标光标

16.10.3让小球响应光标的移动频率

16.11响应键盘

16.12结束游戏

16.12.1发生碰撞后获得随机速度

16.12.2减少“抖动”现象的发生

16.12.3游戏胜利

16.12.4更好地结束游戏

16.13经典飞机大战

16.13.1游戏设定

16.13.2主模块

16.13.3我方飞机

16.13.4响应键盘

16.13.5飞行效果

16.13.6敌方飞机

16.13.7提升敌机速度

16.13.8碰撞检测

16.13.9完美碰撞检测

16.13.10一个BUG

16.13.11发射子弹

16.13.12设置敌机“血槽”

16.13.13中弹效果

16.13.14绘制得分

16.13.15暂停游戏

16.13.16控制难度

16.13.17全屏炸弹

16.13.18发放补给包

16.13.19超级子弹

16.13.20三次机会

16.13.21结束画面

参考文献

前言/序言

  Life is short. You need Python.

——Bruce Eckel

上边这句话是Python社区的名言,翻译过来就是“人生苦短,我用Python”。

我和Python结缘于一次服务器的调试,从此便一发不可收拾。我从来没有遇到一门编程语言可以如此干净、简洁,如果你有处女座情节,你一定会爱上这门语言。使用Python,可以说是很难写出丑陋的代码。我从来没想过一门编程语言可以如此简单,它太适合零基础的朋友踏入编程的大门了,如果我有一个八岁的孩子,我一定会毫不犹豫地使用Python引导他学习编程,因为面对它,永远不缺乏乐趣。

Python虽然简单,其设计却十分严谨。尽管Python可能没有C或C++这类编译型语言运行速度那么快,但是C和C++需要你无时无刻地关注数据类型、内存溢出、边界检查等问题。而Python,它就像一个贴心的仆人,私底下为你都一一处理好,从来不用你操心这些,这让你可以将全部心思放在程序的设计逻辑之上。

有人说,完成相同的一个任务,使用汇编语言需要1000行代码,使用C语言需要500行,使用Java只需要100行,而使用Python,可能只要20行就可以了。这就是Python,使用它来编程,你可以节约大量编写代码的时间。

既然Python如此简单,会不会学了之后没什么实际作用呢?事实上你并不用担心这个问题,因为Python可以说是一门“万金油”语言,在Web应用开发、系统网络运维、科学与数字计算、3D游戏开发、图形界面开发、网络编程中都有它的身影。目前越来越多的IT企业,在招聘栏中都有“精通Python语言优先考虑”的字样。另外,就连Google都在大规模使用Python。

好了,我知道过多的溢美之词反而会使大家反感,所以我必须就此打住,剩下的就留给大家自己体验吧。

接下来简单地介绍一下这本书。一年前,出版社的编辑老师无意间看到了我的一个同名的教学视频,建议我以类似的风格撰写一本书。当时我是受宠若惊的,也很兴奋。刚开始写作就遇到了不小的困难——如何将视频中口语化的描述转变为文字。当然,我希望尽可能地保留原有的幽默和风趣——毕竟学习是要快乐的。这确实需要花不少时间去修改,但我觉得这是值得的。

本书不假设你拥有任何一方面的编程基础,所以本书不但适合有一定编程基础,想学习Python3的读者,也适合此前对编程一无所知,但渴望用编程改变世界的朋友!本书提倡理解为主,应用为王。因此,只要有可能,我都会通过生动的实例来让大家理解概念。虽然这是一本入门书籍,但本书的“野心”可并不止于“初级水平”的教学。本书前半部分是基础的语法特性讲解,后半部分围绕着Python3在爬虫、Tkinter和游戏开发等实例上的应用。编程知识深似海,没办法仅通过一本书将所有的知识都灌输给你,但我能够做到的是培养你对编程的兴趣,提高你编写代码的水平,以及锻炼你的自学能力。最后,本书贯彻的核心理念是: 实用、好玩,还有参与。

本书对应的系列视频教程,可以在http://blog.fishc.com/category/python下载得到,也可扫描以下二维码关注微信号进行观看。

 

点赞

发表评论

电子邮件地址不会被公开。 必填项已用*标注