1000字范文,内容丰富有趣,学习的好帮手!
1000字范文 > python编程入门指南-Python编程初学者指南 PDF扫描版[87MB]

python编程入门指南-Python编程初学者指南 PDF扫描版[87MB]

时间:2023-02-09 20:46:24

相关推荐

python编程入门指南-Python编程初学者指南 PDF扫描版[87MB]

Python编程初学者指南 内容简介:

如果你刚刚接触Python编程,而且正在寻找一本实用的教程,那么这本书为你量身打造。通过阅读本书,你不仅会学到很多实用的Python编程知识,还将懂得如何在实际工作中运用这些知识。本书各个章节都配有大量能够帮助你理解相关知识的范例。书中的每一个章节都会用一个完整的游戏来演示其中的关键知识点。每一章最后都会对该章的知识点进行小结,还会给出一些小练习让你试试身手。学完这本书之后,你就能熟练地运用Python了。不仅如此,你还可以把本书中学到的基本编程知识运用到其他的编程语言上去。在学习Python编程的过程中,你将创建出许多简单的小游戏。通过本书,你将会学到:字符串的构建、切片和索引;定义函数;读写文本文件;创建并操作sprite;面向对象编程;创建GUI;处理声音和音乐,创建动画。本书的网站上都有些什么?Python 3.1.1的Windows安装包。pygame 1.9.1 for Python 3.1.x的Windows安装包。livewires游戏引擎。书中所有完整程序的源码。

Python编程初学者指南 目录:

第1章启程:Game Over程序1

1.1剖析Game Over程序1

1.2Python简介2

1.2.1Python易于使用3

1.2.2Python功能强大3

1.2.3Python是面向对象的3

1.2.4Python是一种"胶水”语言4

1.2.5Python所不在4

1.2.6Python有一个强大的社区4

1.2.7Python是免费的、开源的4

1.3在Windows上设置Python4

1.4在其他操作系统上设置Python5

1.5IDLE简介6

1.5.1通过交互模式进行编程6

1.5.2通过脚本模式进行编程9

1.6回到Game Over程序11

1.6.1使用注释12

1.6.2使用空行13

1.6.3打印字符串13

1.6.4等待用户13

1.7小结14

第2章类型、变量以及简单I/O:Useless Trivia程序15

2.1Useless Trivia程序简介15

2.2使用引号和字符串16

2.2.1Game Over 2.0程序简介16

2.2.2在字符串内部使用引号17

2.2.3打印输出多个值18

2.2.4为print指定结束字符串19

2.2.5创建三重引号字符串19

2.3使用转义序列和字符串20

2.3.1Fancy Credits程序简介20

2.3.2前进一个制表符位21

2.3.3打印反斜杠22

2.3.4插入换行符22

2.3.5插入引号22

2.3.6触发系统蜂鸣器23

2.4字符串的连接和重复23

2.4.1Silly Strings程序简介24

2.4.2字符串的连接25

2.4.3使用行继续符25

2.4.4字符串的重复25

2.5使用数字26

2.5.1Word Problems程序简介26

2.5.2理解数值类型27

2.5.3使用数学运算符27

2.6理解变量28

2.6.1Greeter程序简介29

2.6.2创建变量29

2.6.3使用变量30

2.6.4变量命名30

2.7获取输入31

2.7.1Personal Greeter程序简介31

2.7.2使用input()函数32

2.8使用字符串方法33

2.8.1Quotation Manipulation程序简介34

2.8.2通过字符串方法创建新字符串35

2.9使用正确的类型37

2.9.1Trust Fund Buddy-Bad程序简介37

2.9.2跟踪逻辑错误38

2.10转换值的类型39

2.10.1Trust Fund Buddy-Good程序简介39

2.10.2将字符串转换成整数40

2.10.3使用复合赋值运算符41

2.11回到Useless Trivia程序42

2.11.1创建初始注释42

2.11.2获取用户输入43

2.11.3打印小写和大写形式的name43

2.11.4打印name五次43

2.11.5计算秒数44

2.11.6计算moon_weight和sun_weight44

2.11.7等一等用户44

2.12小结44

第3章条件分支、while循环以及程序策划:Guess My Number游戏46

3.1Guess My Number游戏简介46

3.2生成随机数47

3.2.1Craps Roller程序简介47

3.2.2引入random模块48

3.2.3使用randint()函数49

3.2.4使用randrange()函数49

3.3使用if语句49

3.3.1Password程序简介50

3.3.2观察if语句51

3.3.3创建条件51

3.3.4理解比较运算符52

3.3.5通过缩进创建代码块53

3.3.6构建自己的if语句53

3.4使用else子句53

3.4.1Granted or Denied程序简介54

3.4.2观察else子句55

3.5使用elif子句55

3.5.1Mood Computer程序简介56

3.5.2观察elif子句58

3.6创建while循环59

3.6.1Three-Year-Old Simulator程序简介60

3.6.2观察while循环60

3.6.3初始化哨兵变量61

3.6.4检查哨兵变量61

3.6.5更新哨兵变量62

3.7避免限循环62

3.7.1Losing Battle程序简介62

3.7.2跟踪程序64

3.7.3创建可以变成False的条件64

3.8将值用作条件65

3.8.1Maitre D’程序简介66

3.8.2把值解释为True或False67

3.9故意创建限循环67

3.9.1Finicky Counter程序简介68

3.9.2通过break语句退出循环68

3.9.3通过continue语句跳回循环的开头69

3.9.4理解break和continue的使用场景69

3.10使用复合条件69

3.10.1Exclusive Network程序简介70

3.10.2理解逻辑运算符not72

3.10.3理解逻辑运算符and73

3.10.4理解逻辑运算符or74

3.11规划程序74

3.11.1利用伪码编制算法75

3.11.2逐步对算法进行提炼75

3.12回到Guess My Number游戏76

3.12.1程序规划76

3.12.2创建初始注释块77

3.12.3引入random模块77

3.12.4游戏说明77

3.12.5设置初始值77

3.12.6创建猜测循环78

3.12.7向玩家表示祝贺78

3.12.8等待玩家退出78

3.13小结78

第4章for循环、字符串以及元组:Word Jumble游戏80

4.1Word Jumble游戏简介80

4.2使用for循环81

4.2.1Loopy String程序简介81

4.2.2理解for循环82

4.2.3创建for循环83

4.3通过for循环进行计数83

4.3.1Counter程序简介83

4.3.2前向计数84

4.3.3按五为单位进行计数85

4.3.4后向计数85

4.4对字符串使用序列运算符和函数86

4.4.1Message Analyzer程序简介86

4.4.2使用len()函数87

4.4.3使用in运算符87

4.5对字符串进行索引88

4.5.1Random Access程序简介88

4.5.2使用正的位置编号89

4.5.3使用负的位置编号90

4.5.4随机访问字符串元素91

4.6理解字符串的不变性92

4.7构建新字符串93

4.7.1No Vowels程序简介93

4.7.2创建常量94

4.7.3通过已有的字符串创建新字符串95

4.8对字符串进行切片操作96

4.8.1Pizza Slicer程序简介96

4.8.2理解None97

4.8.3理解切片98

4.8.4创建切片98

4.8.5使用切片速记法99

4.9创建元组99

4.9.1Hero’s Inventory程序简介100

4.9.2创建空元组101

4.9.3把元组当作条件101

4.9.4创建带有元素的元组102

4.9.5打印元组102

4.9.6遍历元组中的元素102

4.10使用元组103

4.10.1Hero’s Inventory 2.0程序简介103

4.10.2准备工作104

4.10.3对元组使用len()函数104

4.10.4对元组使用in运算符104

4.10.5对元组进行索引105

4.10.6对元组进行切片105

4.10.7理解元组的不变性106

4.10.8元组的连接操作106

4.11回到Word Jumble游戏107

4.11.1准备工作107

4.11.2对题目的创建部分进行设计107

4.11.3创建空的题目字符串108

4.11.4设置循环108

4.11.5产生word中的随机位置108

4.11.6创建新版的jumble108

4.11.7创建新版的word109

4.11.8欢迎玩家的到来109

4.11.9获取玩家的答案109

4.11.10向玩家表示恭喜109

4.11.11结束游戏110

4.12小结110

第5章列表和字典:Hangman游戏111

5.1Hangman游戏简介111

5.2使用列表113

5.2.1Hero’s Inventory 3.0程序简介113

5.2.2创建列表114

5.2.3对列表使用len()函数114

5.2.4对列表使用in运算符114

5.2.5对列表进行索引114

5.2.6对列表进行切片115

5.2.7对列表进行连接115

5.2.8理解列表的可变性115

5.2.9通过索引对列表元素进行赋值116

5.2.10通过切片对列表进行赋值116

5.2.11删除列表元素116

5.2.12删除列表切片117

5.3使用列表方法117

5.3.1High Scores程序简介117

5.3.2准备工作118

5.3.3显示菜单118

5.3.4退出程序119

5.3.5显示得分记录119

5.3.6添加得分记录119

5.3.7删除得分记录120

5.3.8对得分记录进行排序120

5.3.9处理效选项121

5.3.10等一等用户121

5.4理解元组和列表的使用场景122

5.5使用嵌套序列122

5.5.1High Scores 2.0程序简介122

5.5.2创建嵌套序列123

5.5.3访问嵌套元素124

5.5.4序列的解包125

5.5.5准备工作125

5.5.6访问嵌套的元组并显示得分126

5.5.7通过附加嵌套元组的方式添加得分记录126

5.5.8处理效菜单项126

5.5.9等一等用户126

5.6理解共享引用127

5.7使用字典129

5.7.1Geek Translator程序简介129

5.7.2创建字典130

5.7.3访问字典的值130

5.7.4准备工作132

5.7.5获取值133

5.7.6增加键值对133

5.7.7替换键值对134

5.7.8删除键值对134

5.7.9结束程序135

5.7.10理解字典的需求135

5.8回到Hangman游戏136

5.8.1准备工作136

5.8.2创建常量137

5.8.3初始化变量140

5.8.4创建主循环140

5.8.5获取用户的答案140

5.8.6判断猜测结果141

5.8.7结束程序141

5.9小结142

第6章函数:Tic-Tac-Toe游戏143

6.1Tic-Tac-Toe游戏简介143

6.2创建函数144

6.2.1Instructions程序简介145

6.2.2定义函数146

6.2.3编制函数的文档说明146

6.2.4调用函数147

6.2.5理解抽象147

6.3使用参数和返回值147

6.3.1Receive and Return程序简介148

6.3.2通过参数获取信息149

6.3.3通过返回值反馈信息149

6.3.4理解封装150

6.3.5在同一个函数中接收和返回值150

6.3.6理解软件复用151

6.4使用关键字参数和默认参数值152

6.4.1Birthday Wishes程序简介152

6.4.2使用位置形参和位置实参153

6.4.3使用位置形参和关键字实参154

6.4.4使用默认参数值154

6.5使用全局变量和常量156

6.5.1理解作用域156

6.5.2Global Reach程序简介157

6.5.3从函数内部读取全局变量158

6.5.4在函数内部屏蔽全局变量158

6.5.5从函数内部修改全局变量159

6.5.6理解何时使用全局变量和常量159

6.6回到Tic-Tac-Toe游戏160

6.6.1规划Tic-Tac-Toe游戏160

6.6.2准备工作162

6.6.3display_instruct()函数162

6.6.4ask_yes_no()函数163

6.6.5ask_number()函数163

6.6.6pieces()函数164

6.6.7new_board()函数164

6.6.8display_board()函数164

6.6.9legal_moves()函数165

6.6.10winner()函数165

6.6.11human_move()函数166

6.6.12computer_move()函数167

6.6.13next_turn()函数169

6.6.14congrat_winner()函数169

6.6.15main()函数170

6.6.16启动程序171

6.7小结171

第7章文件和异常:Trivia Challenge游戏172

7.1Trivia Challenge游戏简介172

7.2读取文本文件173

7.2.1Read It程序简介173

7.2.2文件的打开和关闭175

7.2.3按字符读取文件176

7.2.4按行读取文件177

7.2.5将所有行读取为一个列表178

7.2.6对文件进行循环遍历178

7.3写入文本文件179

7.3.1Write It程序简介179

7.3.2将字符串写入到文件180

7.3.3将字符串列表写入到文件180

7.4在文件中存储复杂数据182

7.4.1Pickle It程序简介182

7.4.2对数据进行Pickle处理并写入文件182

7.4.3读取文件中的数据并进行反Pickle处理184

7.4.4通过shelf保存序列化对象185

7.4.5通过shelf获取序列化对象186

7.5处理异常187

7.5.1Handle It程序简介187

7.5.2使用try语句及except子句188

7.5.3指定异常类型188

7.5.4处理多种异常190

7.5.5获取异常的参数191

7.5.6加上一个else子句191

7.6回到Trivia Challenge游戏192

7.6.1理解数据文件结构192

7.6.2open_file()函数193

7.6.3next_line()函数194

7.6.4next_block()函数194

7.6.5welcome()函数195

7.6.6游戏初始化设置195

7.6.7提出问题195

7.6.8获取答案196

7.6.9判断答案196

7.6.10获取下一个问题196

7.6.11结束游戏196

7.6.12启动main()函数197

7.7小结197

第8章软件对象:Critter Caretaker程序198

8.1Critter Caretaker程序简介198

8.2理解面向对象基础知识200

8.3创建类、方法和对象200

8.3.1Simple Critter程序简介201

8.3.2定义类202

8.3.3定义方法202

8.3.4实例化对象203

8.3.5调用方法203

8.4使用构造器203

8.4.1Constructor Critter程序简介203

8.4.2创建构造器204

8.4.3创建多个对象205

8.5使用特性205

8.5.1Attribute Critter程序简介205

8.5.2初始化特性207

8.5.3访问特性208

8.5.4打印对象208

8.6使用类特性和静态方法209

8.6.1Classy Critter程序简介209

8.6.2创建类特性211

8.6.3访问类特性211

8.6.4创建静态方法212

8.6.5调用静态方法212

8.7理解对象封装213

8.8使用私有特性和私有方法213

8.8.1Private Critter程序简介214

8.8.2创建私有特性214

8.8.3访问私有特性215

8.8.4创建私有方法216

8.8.5访问私有方法216

8.8.6尊重对象的隐私217

8.8.7理解何时该实现私有策略217

8.9控制对特性的访问218

8.9.1Property Critter程序简介218

8.9.2创建属性219

8.9.3访问属性220

8.10回到Critter Caretaker程序221

8.10.1Critter类222

8.10.2创建Critter224

8.10.3创建菜单系统224

8.10.4启动程序225

8.11小结225

第9章面向对象编程:Blackjack游戏227

9.1Blackjack游戏简介227

9.2发送和接收消息228

9.2.1Alien Blaster程序简介228

9.2.2发送消息230

9.2.3接收消息231

9.3组合多个对象231

9.3.1Playing Cards程序简介231

9.3.2创建Card类232

9.3.3创建Hand类232

9.3.4使用Card对象233

9.3.5通过Hand对象将多个Card对象组合起来234

9.4通过继承创建新类235

9.5通过继承扩展类235

9.5.1Playing Cards 2.0程序简介235

9.5.2创建一个基类236

9.5.3继承基类237

9.5.4扩展派生类238

9.5.5使用派生类239

9.6改变继承方法的行为241

9.6.1Playing Cards 3.0程序简介241

9.6.2创建基类242

9.6.3重写基类方法242

9.6.4调用基类方法243

9.6.5使用派生类244

9.7理解多态245

9.8创建模块245

9.8.1Simple Game程序简介246

9.8.2编写模块246

9.8.3引入模块248

9.8.4使用引入的函数和类248

9.9回到Blackjack游戏249

9.9.1cards模块249

9.9.2对类进行设计251

9.9.3为游戏循环编写伪码252

9.9.4引入cards和games模块253

9.9.5BJ_Card类253

9.9.6BJ_Deck类254

9.9.7BJ_Hand类254

9.9.8BJ_Player类256

9.9.9BJ_Dealer类256

9.9.10BJ_Game类257

9.9.11main()函数259

9.10小结260

第10章GUI开发:Mad Lib程序262

10.1Mad Lib程序简介262

10.2详解GUI264

10.3理解事件驱动编程265

10.4使用根窗体266

10.4.1Simple GUI程序简介266

10.4.2引入tkinter模块268

10.4.3创建根窗体268

10.4.4修整根窗体268

10.4.5进入根窗体的事件循环269

10.5使用标签269

10.5.1Labeler程序简介269

10.5.2准备工作269

10.5.3创建框架270

10.5.4创建标签270

10.5.5进入根窗体的事件循环271

10.6使用按钮271

10.6.1Lazy Buttons程序简介271

10.6.2准备工作271

10.6.3创建按钮272

10.6.4进入根窗体的事件循环273

10.7利用类创建GUI273

10.7.1Lazy Buttons 2程序简介273

10.7.2引入tkinter模块273

10.7.3定义Application类273

10.7.4定义构造器方法274

10.7.5定义一个用于创建小部件的方法274

10.7.6创建Application对象275

10.8将小部件与事件处理器绑定起来275

10.8.1Click Counter程序简介275

10.8.2准备工作275

10.8.3绑定事件处理器276

10.8.4创建事件处理器276

10.8.5程序收尾工作277

10.9使用Text和Entry小部件以及Grid布局管理器277

10.9.1Longevity程序简介277

10.9.2准备工作278

10.9.3利用Grid布局管理器放置小部件278

10.9.4创建Entry小部件279

10.9.5创建Text小部件280

10.9.6利用文本型小部件获取和插入文本280

10.9.7收尾工作281

10.10使用复选框282

10.10.1Movie Chooser程序简介282

10.10.2准备工作282

10.10.3使小部件的容器成为其唯一的引用283

10.10.4创建复选框283

10.10.5获取复选框的状态285

10.10.6收尾工作285

10.11使用单选框286

10.11.1Movie Chooser 2程序简介286

10.11.2准备工作286

10.11.3创建单选框287

10.11.4从一组单选框中获取选定值288

10.11.5收尾工作289

10.12回到Mad Lib程序289

10.12.1引入tkinter模块289

10.12.2Application类的构造器方法289

10.12.3Application类的create_widgets()方法290

10.12.4Application类的tell_story()方法292

10.12.5程序的主体部分293

10.13小结293

第11章图形图像:Pizza Panic游戏294

11.1Pizza Panic游戏简介294

11.2pygame和livewires简介296

11.3创建图形窗口296

11.3.1New Graphics Window程序简介297

11.3.2引入games模块297

11.3.3初始化图形屏幕298

11.3.4启动主循环298

11.4设置背景图片299

11.4.1Background Image程序简介299

11.4.2加载图片300

11.4.3设置背景301

11.5理解图形坐标系统301

11.6显示sprite302

11.6.1Pizza Sprite程序简介303

11.6.2为sprite加载图片304

11.6.3创建sprite305

11.6.4把sprite放到屏幕上面去305

11.7显示文本307

11.7.1Big Score程序简介307

11.7.2引入color模块308

11.7.3创建Text对象308

11.7.4向屏幕添加Text对象309

11.8显示消息309

11.8.1You Won程序简介309

11.8.2引入color模块311

11.8.3创建Message对象311

11.8.4使用屏幕的高度和宽度312

11.8.5把Message对象放到屏幕上面去312

11.9移动sprite312

11.9.1Moving Pizza程序简介312

11.9.2设置sprite的速度值314

11.10处理屏幕边界314

11.10.1Bouncing Pizza程序简介314

11.10.2准备工作315

11.10.3从Sprite派生出一个新类315

11.10.4重写update()方法316

11.10.5收尾工作316

11.11处理鼠标输入317

11.11.1Moving Pan程序简介317

11.11.2准备工作318

11.11.3读取鼠标的x和y坐标318

11.11.4设置鼠标光标的可见性319

11.11.5捕获图形屏幕中的输入319

11.11.6收尾工作320

11.12碰撞检测320

11.12.1Slippery Pizza程序简介320

11.12.2准备工作322

11.12.3碰撞检测322

11.12.4碰撞处理322

11.12.5收尾工作323

11.13回到Pizza Panic游戏324

11.13.1准备工作324

11.13.2Pan类324

11.13.3Pizza类326

11.13.4Chef类328

11.13.5main()函数329

11.14小结330

第12章声音、动画以及程序开发:Astrocrash游戏332

12.1Astrocrash游戏简介332

12.2读取键盘334

12.2.1Read Key程序简介334

12.2.2准备工作334

12.2.3按键判断335

12.2.4收尾工作336

12.3旋转sprite336

12.3.1Rotate Sprite程序简介336

12.3.2使用Sprite的angle属性338

12.4创建动画339

12.4.1Explosion程序简介339

12.4.2爆炸图片说明339

12.4.3准备工作340

12.4.4创建图片文件列表340

12.4.5创建Animation对象341

12.5播放声音和音乐342

12.5.1Sound and Music程序简介342

12.5.2操作声音342

12.5.3操作音乐345

12.5.4收尾工作346

12.6规划Astrocrash游戏346

12.6.1游戏的功能347

12.6.2游戏的类347

12.6.3游戏的资源348

12.7创建小行星348

12.7.1Astrocrash01程序简介348

12.7.2准备工作349

12.7.3Asteroid类349

12.7.4main()函数351

12.8旋转飞船351

12.8.1Astrocrash02程序简介351

12.8.2Ship类352

12.8.3实例化Ship对象353

12.9移动飞船353

12.9.1Astrocrash03程序简介353

12.9.2引入math模块354

12.9.3为Ship类添加类变量和常量354

12.9.4修改Ship的update()方法354

12.10发射导弹355

12.10.1Astrocrash04程序简介356

12.10.2修改Ship的update()方法356

12.10.3Missile类357

12.11控制导弹发射的频率359

12.11.1Astrocrash05程序简介359

12.11.2为Ship类添加一个类常量360

12.11.3为Ship类创建构造器方法360

12.11.4修改Ship类的update()方法360

12.12处理碰撞361

12.12.1Astrocrash06程序简介361

12.12.2修改Missile类的update()方法362

12.12.3为Missile类添加die()方法362

12.12.4修改Ship类的update()方法362

12.12.5为Ship类添加die()方法362

12.12.6为Asteroid类添加一个类常量363

12.12.7为Asteroid类添加die()方法363

12.13添加爆炸效果363

12.13.1Astrocrash07程序简介363

12.13.2Wrapper类364

12.13.3Collider类365

12.13.4修改Asteroid类366

12.13.5修改Ship类366

12.13.6修改Missile类367

12.13.7Explosion类367

12.14添加难度级别、得分记录以及背景音乐368

12.14.1Astrocrash08程序简介368

12.14.2引入color模块369

12.14.3Game类369

12.14.4为Asteroid类添加类变量和类常量373

12.14.5修改Asteroid类的构造器方法373

12.14.6修改Asteroid类的die()方法374

12.14.7为Ship类添加类常量374

12.14.8修改Ship类的构造器方法375

12.14.9修改Ship类的update()方法375

12.14.10为Ship类添加die()方法375

12.14.11main()函数375

12.15小结376

附录A配套网站377

附录Blivewires参考379

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。