注册 | 登录读书好,好读书,读好书!
读书网-DuShu.com
当前位置: 首页出版图书科学技术计算机/网络软件与程序设计Python从菜鸟到高手

Python从菜鸟到高手

Python从菜鸟到高手

定 价:¥128.00

作 者: 李宁 著
出版社: 清华大学出版社
丛编项:
标 签: 暂缺

购买这本书可以去


ISBN: 9787302507161 出版时间: 2018-09-01 包装: 平装
开本: 16 页数: 656 字数:  

内容简介

  内 容 简 介 本书从实战角度系统讲解了Python核心知识点以及Python在Web开发、数据分析、网络爬虫、桌面应用等领域的各种开发实践。本书用超过5万行的代码及大量的实战案例完美演绎了Python在各个领域的出色表现,每一个案例都有详细的实现步骤,带领读者由浅入深系统掌握Python语言的核心及Python全栈开发技能。本书共分六篇,各篇内容如下: Python基础知识篇(第1章~第10章),内容主要包括Python的基本概念、开发环境安装和配置、Python语言的基础知识,控制语句、列表、元组、字符串、字典、函数、类、对象、异常、方法、属性和迭代器;Python高级编程篇(第11章~第20章),内容主要包括正则表达式、常用模块、文件和流、数据存储、TCP和UDP编程、Urllib3、twisted、FTP、Email、多线程、tkinter、PyQt5和测试;Python Web开发篇(第21章、第22章),主要讲解了Python语言中流行的两个Web开发框架(Flask和Django)的使用方法;Python科学计算与数据分析篇(第23章~第25章),主要讲解了Python语言中常用的3个数据分析和数据可视化库(NumPy、Matplotlib和Pandas)的使用方法;Python Web爬虫技术篇(第26章、第27章),主要讲解了编写网络爬虫的关键技术和常用程序库,这些程序库主要包括Beautiful Soup和Scrapy;Python项目实战篇(第28章~第33章),内容主要包括Web项目开发实战、爬虫项目开发实战、API项目开发实战、桌面应用项目开发实战和游戏项目开发实战。 本书适合作为Python程序设计者的参考用书。

作者简介

  作者简介 李宁 欧瑞科技创始人/CEO,宁哥教育创始人,东北大学计算机专业硕士。曾任国内某大型软件公司项目经理、宁哥教育教学总监、51CTO学院金牌讲师、CSDN特级讲师。从事软件研究和开发超过15年,一直从事Python、人工智能、区块链、JavaScript、Node.js、Java以及跨平台技术的研究和技术指导工作,对国内外相关领域的技术、理论和实践有很深的理解和研究。

图书目录

 

推荐序. 1

前言. 3

本书配套资源. 5

第一篇  Python基础知识

第1章  初识Python 3

1.1  Python简介. 3

1.1.1  什么是Python 3

1.1.2  Python的应用领域. 4

1.1.3  如何学好Python 5

1.1.4  Python API文档. 6

1.2  搭建Python开发环境. 8

1.2.1  安装官方的Python运行环境. 9

1.2.2  配置PATH环境变量. 11

1.2.3  安装Anaconda Python开发环境. 13

1.2.4  下载和安装JDK 13

1.2.5  下载和安装Eclipse 16

1.2.6  Python IDE(PyDev)安装. 17

1.2.7  配置Python IDE(PyDev)开发环境. 20

1.2.8  测试Python IDE(PyDev)开发环境. 21

1.2.9  安装PyCharm 22

1.2.10  配置PyCharm 23

1.2.11  Python中的REPL环境. 25

1.3  第一个Python程序. 26

1.4  调试Python程序. 26

1.5  小结. 29

1.6  实战与练习. 29

第2章  Python语言基础. 30

2.1 Python程序中的基本要素. 30

2.1.1  导入Python模块. 30

2.1.2  声明变量. 32

2.1.3  清空Python控制台. 32

2.2 数字. 34

2.2.1  基础知识. 34

2.2.2  大整数. 36

2.2.3  二进制、八进制和十六进制. 36

2.2.4  数字的格式化输出. 37

2.3 获取用户输入. 39

2.4 函数. 40

2.5 注释. 41

2.6 字符串基础. 42

2.6.1  单引号字符串和转义符. 42

2.6.2  拼接字符串. 43

2.6.3  保持字符串的原汁原味. 44

2.6.4  长字符串. 46

2.7 小结. 47

2.8 实战与练习. 47

第3章  条件、循环和其他语句. 49

3.1 神奇的print函数. 49

3.2 有趣的赋值操作. 51

3.3 用缩进创建代码块. 53

3.4 条件和条件语句. 53

3.4.1  布尔值和布尔变量. 54

3.4.2  条件语句(if、else和elif). 55

3.4.3  嵌套代码块. 56

3.4.4  比较运算符. 57

3.4.5  断言. 60

3.5 循环. 62

3.5.1  while循环. 62

3.5.2  for循环. 63

3.5.3  跳出循环. 65

3.5.4  循环中的else语句. 67

3.6 使用exec和eval执行求值字符串. 69

3.7 小结. 71

3.8 实战与练习. 71

第4章  列表和元组. 73

4.1 定义序列. 73

4.2 序列的基本操作. 74

4.2.1  通过索引操作序列元素. 74

4.2.2  分片. 77

4.2.3  序列相加. 83

4.2.4  序列的乘法. 84

4.2.5  检查某个值是否属于一个序列. 85

4.2.6  序列的长度、最大值和最小值. 86

4.3 列表的基本操作. 87

4.4 列表方法. 89

4.5 元组. 93

4.6 小结. 95

4.7 实战与练习. 95

第5章  字符串..................................................................................... 97

5.1 字符串的基本操作. 97

5.2 格式化字符串. 98

5.2.1  字符串格式化基础. 98

5.2.2  模板字符串. 100

5.2.3  字符串的format方法. 101

5.2.4  更进一步控制字符串格式化参数. 102

5.2.5  字段宽度、精度和千位分隔符. 104

5.2.6  符号、对齐、用0填充和进制转换. 105

5.3 字符串方法. 107

5.3.1  center方法. 107

5.3.2  find方法. 108

5.3.3  join方法. 109

5.3.4  split方法. 110

5.3.5  lower方法、upper方法和capwords函数. 111

5.3.6  replace方法. 112

5.3.7  strip方法. 112

5.3.8  translate方法与maketrans方法. 113

5.4 小结. 114

5.5 实战与练习. 115

第6章  字典. 116

6.1 为什么要引入字典. 116

6.2 创建和使用字典. 117

6.2.1  dict函数. 117

6.2.2  字典的基本操作. 118

6.2.3  字典的格式化字符串. 120

6.2.4  序列与迭代. 121

6.3 字典方法. 124

6.3.1  clear方法. 124

6.3.2  copy方法与deepcopy函数. 125

6.3.3  fromkeys方法. 126

6.3.4  get方法. 127

6.3.5  items方法和keys方法. 128

6.3.6  pop方法和popitem方法. 129

6.3.7  setdefault方法. 130

6.3.8  update方法. 131

6.3.9  values方法. 132

6.4 小结. 133

6.5 实战与练习. 133

第7章  函数. 134

7.1 懒惰是重用的基石. 134

7.2 函数基础. 136

7.2.1  创建函数. 136

7.2.2  为函数添加文档注释. 137

7.2.3  没有返回值的函数. 138

7.3 函数参数. 139

7.3.1  改变参数的值. 139

7.3.2  关键字参数与默认值. 144

7.3.3  可变参数. 147

7.3.4  将序列作为函数的参数值. 151

7.4 作用域. 154

7.5 递归. 156

7.6 小结. 158

7.7 实战与练习. 158

第8章  类和对象. 159

8.1 对象的魔法. 159

8.2 类. 160

8.2.1  创建自己的类. 160

8.2.2  方法和私有化. 161

8.2.3  类代码块. 163

8.2.4  类的继承. 164

8.2.5  检测继承关系. 165

8.2.6  多继承. 167

8.2.7  接口. 169

8.3 小结. 170

8.4 实战与练习. 171

第9章  异常. 172

9.1 什么是异常. 172

9.2 主动抛出异常. 173

9.2.1  raise语句. 173

9.2.2  自定义异常类. 175

9.3 捕捉异常. 176

9.3.1  try…except语句的基本用法. 176

9.3.2  捕捉多个异常. 177

9.3.3  用同一个代码块处理多个异常. 179

9.3.4  捕捉对象. 180

9.3.5  异常捕捉中的else子句. 182

9.3.6  异常捕捉中的finally子句. 183

9.4 异常、函数与栈跟踪. 185

9.5 异常的妙用. 186

9.6 小结. 188

9.7 实战与练习. 188

第10章  方法、属性和迭代器. 189

10.1 构造方法. 189

10.1.1  构造方法的基础知识. 189

10.1.2  重写普通方法和构造方法. 190

10.1.3  使用super函数. 193

10.2 特殊成员方法. 194

10.2.1  自定义序列. 194

10.2.2  从内建列表、字符串和字典继承. 197

10.3 属性. 199

10.3.1  传统的属性. 199

10.3.2  property函数. 201

10.3.3  监控对象中所有的属性. 203

10.4 静态方法和类方法. 205

10.5 迭代器. 207

10.5.1  自定义可迭代的类. 207

10.5.2  将迭代器转换为列表. 209

10.6 生成器. 210

10.6.1  创建生成器. 210

10.6.2  递归生成器. 212

10.7 小结. 213

10.8 实战与练习. 214

第二篇  Python高级编程

第11章  正则表达式. 217

11.1 在Python语言中使用正则表达式. 217

11.1.1  使用match方法匹配字符串. 217

11.1.2  使用search方法在一个字符串中查找模式. 218

11.1.3  匹配多个字符串. 219

11.1.4  匹配任何单个字符. 220

11.1.5  使用字符集. 221

11.1.6  重复、可选和特殊字符. 223

11.1.7  分组. 226

11.1.8  匹配字符串的起始和结尾以及单词边界. 228

11.1.9  使用findall和finditer查找每一次出现的位置. 229

11.1.10  用sub和subn搜索与替换. 230

11.1.11  使用split分隔字符串. 232

11.2 一些常用的正则表达式. 232

11.3 小结. 233

11.4 实战与练习. 234

第12章  常用模块. 235

12.1 sys模块. 235

12.2 os模块. 238

12.2.1  获取与改变工作目录. 238

12.2.2  文件与目录操作. 239

12.2.3  软链接与硬链接. 240

12.2.4  杂项. 241

12.3 集合、堆和双端队列(heap模块、deque类). 243

12.3.1  集合. 244

12.3.2  堆. 247

12.3.3  双端队列. 249

12.4 时间、日期与日历(time模块). 250

12.4.1  时间元组. 250

12.4.2  格式化日期和时间. 251

12.4.3  时间戳的增量. 253

12.4.4  计算日期和时间的差值. 254

12.4.5  获取某月和某年的日历. 255

12.5 随机数(random模块). 256

12.6 数学(math模块). 257

12.7 小结. 258

12.8 实战与练习. 258

第13章  文件和流. 259

13.1 打开文件. 259

13.2 操作文件的基本方法. 260

13.2.1  读文件和写文件. 261

13.2.2  管道输出. 262

13.2.3  读行和写行. 264

13.3 使用FileInput对象读取文件. 265

13.4 小结. 266

13.5 实战与练习. 266

第14章  数据存储. 268

14.1 处理XML格式的数据. 268

14.1.1  读取与搜索XML文件. 268

14.1.2  字典转换为XML字符串. 270

14.1.3  XML字符串转换为字典. 272

14.2 处理JSON格式的数据. 273

14.2.1  JSON字符串与字典互相转换. 273

14.2.2  将JSON字符串转换为类实例. 275

14.2.3  将类实例转换为JSON字符串. 276

14.2.4  类实例列表与JSON字符串互相转换. 277

14.3 将JSON字符串转换为XML字符串. 278

14.4 SQLite数据库. 279

14.4.1  管理SQLite数据库. 279

14.4.2  用Python操作SQLite数据库. 281

14.5 MySQL数据库. 284

14.6 ORM 286

14.6.1  SQLAlchemy 287

14.6.2  SQLObject 291

14.7 非关系型数据库. 294

14.7.1  NoSQL简介. 294

14.7.2  MongoDB数据库. 295

14.7.3  pymongo模块. 296

14.8 小结. 297

14.9 实战与练习. 297

第15章  TCP与UDP编程. 299

15.1 套接字. 299

15.1.1  建立TCP服务端. 299

15.1.2  服务端接收数据的缓冲区. 303

15.1.3  服务端的请求队列. 305

15.1.4  TCP时间戳服务端. 307

15.1.5  用Socket实现HTTP服务器. 307

15.1.6  客户端Socket 311

15.1.7  UDP时间戳服务端. 312

15.1.8  UDP时间戳客户端. 313

15.2 socketserver模块. 314

15.2.1  实现socketserver TCP时间戳服务端. 314

15.2.2  实现socketserver TCP时间戳客户端. 315

15.3 小结. 316

15.4  实战与练习. 316

第16章  网络高级编程. 317

16.1 urllib3模块. 317

16.1.1  发送HTTP GET请求. 318

16.1.2  发送HTTP POST请求. 319

16.1.3  HTTP请求头. 320

16.1.4  HTTP响应头. 322

16.1.5  上传文件. 323

16.1.6  超时. 325

16.2 twisted框架. 326

16.2.1  异步编程模型. 327

16.2.2  Reactor(反应堆)模式. 329

16.2.3  HelloWorld(twisted框架). 329

16.2.4  用twisted实现时间戳客户端. 331

16.2.5  用twisted实现时间戳服务端. 332

16.2.6  用twisted获取Email邮箱目录列表. 333

16.3 FTP客户端. 338

16.4 Email客户端. 341

16.4.1  使用SMTP发送简单的Email 341

16.4.2  使用SMTP发送带附件的Email 343

16.4.3  使用POP3接收Email 344

16.4.4  使用IMAP4接收Email 346

16.5 小结. 348

16.6 实战与练习. 348

第17章  多线程. 349

17.1 线程与进程. 349

17.1.1  进程. 349

17.1.2  线程. 349

17.2 Python与线程. 350

17.2.1  使用单线程执行程序. 350

17.2.2  使用多线程执行程序. 351

17.2.3  为线程函数传递参数. 352

17.2.4  线程和锁. 353

17.3 高级线程模块. 355

17.3.1  Thread类与线程函数. 355

17.3.2  Thread类与线程对象. 356

17.3.3  从Thread类继承. 357

17.4 线程同步. 359

17.4.1  线程锁. 359

17.4.2  信号量. 361

17.5 生产者—消费者问题与queue模块. 364

17.6 小结. 366

17.7 实战与练习. 366

第18章  GUI库:tkinter 368

18.1  tkinter简介. 368

18.2  编写第一个tkinter程序. 368

18.3  布局. 370

18.3.1  pack布局. 370

18.3.2  place布局. 376

18.3.3  grid布局. 377

18.4  控件. 378

18.4.1  Label控件和Button控件. 378

18.4.2  Entry控件与Text控件. 380

18.4.3  Radiobutton控件. 382

18.4.4  Checkbutton控件. 383

18.4.5  Scale 控件. 384

18.4.6  Listbox控件. 386

18.5  向窗口添加菜单. 387

18.6  对话框. 389

18.7  小结. 390

18.8  实战与练习. 390

第19章  GUI库:PyQt5 391

19.1 PyQt5简介. 391

19.2 安装PyQt5 392

19.2.1  PyQt5开发环境搭建. 392

19.2.2  配置QTDesigner(可视化开发). 392

19.2.3  配置PyUIC 395

19.3 编写第一个PyQt5程序. 397

19.4 窗口的基本功能. 398

19.4.1  设置窗口图标. 398

19.4.2  显示提示框. 398

19.4.3  关闭窗口. 399

19.4.4  消息盒子. 400

19.4.5  窗口居中. 401

19.5 布局. 402

19.5.1  绝对布局. 402

19.5.2  盒布局. 403

19.5.3  网格布局. 405

19.6 控件. 406

19.6.1  QPushButton控件. 406

19.6.2  QLineEdit控件. 408

19.6.3  QCheckBox控件. 409

19.6.4  QSlider控件. 410

19.6.5  QProgressBar控件. 411

19.6.6  QPixmap控件. 413

19.6.7  QComboBox控件. 414

19.6.8  QCalendarWidget控件. 415

19.7 菜单. 416

19.8 小结. 418

19.9 实战与练习. 418

第20章  测试. 419

20.1 先测试后编码. 419

20.1.1  为代码划定边界. 420

20.1.2  测试的步骤. 421

20.2 测试工具. 421

20.2.1  doctest 421

20.2.2  unittest 423

20.3 检查源代码. 424

20.3.1  PyLint 425

20.3.2  Flake8 426

20.4 性能分析. 428

20.5 小结. 429

20.6 实战与练习. 429

第三篇  Python Web开发

第21章  Python Web框架:Flask 433

21.1 Flask基础知识. 434

21.1.1  使用8行代码搞定Web应用. 434

21.1.2  静态路由和动态路由. 435

21.1.3  获取HTTP请求数据. 438

21.1.4  Response与Cookie 439

21.1.5  会话. 441

21.1.6  静态文件和重定向. 443

21.2 Jinja2模板. 443

21.2.1  第一个基于Jinja2模板的Web应用. 444

21.2.2  在Jinja2模板中使用复杂数据. 445

21.2.3  在Jinja2模板中的过滤器. 447

21.2.4  条件控制. 448

21.2.5  循环控制. 450

21.2.6  宏操作. 452

21.2.7  include指令. 455

21.2.8  模板继承. 457

21.2.9  使用flask-bootstrap模块集成twitterBootstrap 458

21.2.10  自定义错误页面. 460

21.3 Web表单与Flask-WTF扩展. 461

21.3.1  表单类. 462

21.3.2  简单的表单组件. 464

21.3.3  单选和多选组件. 467

21.3.4  表单校验器. 469

21.3.5  获取和设置表单组件中的数据. 472

21.4 小结. 473

21.5 实战与练习. 474

第22章  Python Web框架:Django 475

22.1 Django开发环境搭建. 475

22.2 Django基础知识. 476

22.2.1  建立第一个Django工程. 476

22.2.2  Django工程结构分析. 477

22.2.3  远程访问与端口号. 477

22.2.4  用PyCharm建立Django工程. 478

22.2.5  添加路由. 480

22.2.6  在MyCharm中指定IP和端口号. 482

22.2.7  处理HTTP请求. 482

22.2.8  Response与Cookie 484

22.2.9  读写Session 485

22.2.10  用户登录. 487

22.2.11  静态文件. 488

22.3 Django模板. 490

22.3.1  编写第一个基于Django模板的应用. 490

22.3.2  条件控制标签. 492

22.3.3  循环控制标签. 493

22.3.4  过滤器. 494

22.4 小结. 496

22.5 实战与练习. 496

第四篇  Python科学计算与数据分析

第23章  科学计算库:NumPy 499

23.1 NumPy开发环境搭建. 499

23.2 第一个NumPy程序. 500

23.3 NumPy数组. 501

23.3.1  创建多维数组. 501

23.3.2  获取数组值和数组的分片. 502

23.3.3  改变数组的维度. 502

23.3.4  水平组合数组. 503

23.3.5  垂直数组组合. 505

23.3.6  水平分隔数组. 505

23.3.7  垂直分隔数组. 507

23.3.8  将数组转换为Python列表. 508

23.4 NumPy常用函数. 509

23.4.1  存取NumPy数组. 509

23.4.2  读写CSV文件. 510

23.4.3  成交量加权平均价格. 511

23.4.4  数组的最大值、最小值和取值范围. 512

23.4.5  计算数组的中位数和方差. 513

23.4.6  计算两只股票的相关性. 514

23.5 小结. 515

23.6 实战与练习. 515

第24章  数据可视化库:Matplotlib 516

24.1  Matplotlib开发环境搭建. 516

24.2  基础知识. 517

24.2.1 第一个Matplotlib程序. 517

24.2.2 绘制正弦曲线和余弦曲线. 518

24.2.3 绘制随机点. 519

24.2.4 绘制柱状图. 520

24.2.5 绘制直方图与盒状图. 521

24.2.6 绘制饼图. 523

24.3  定制颜色和样式. 524

24.3.1 定制曲线的颜色. 524

24.3.2 定制离散点的样式. 525

24.3.3 定制柱状图颜色. 526

24.3.4 定制饼图颜色. 526

24.3.5 定制曲线类型. 527

24.3.6 定制柱状图的填充模式. 528

24.4  注释. 529

24.4.1 在坐标系上显示标题. 529

24.4.2 使用LaTex格式的标题. 529

24.4.3 为X轴和Y轴添加注释. 530

24.4.4 在坐标系指定位置放置注释. 531

24.4.5 为文本注释添加Box 532

24.5  小结. 532

24.6  实战与练习. 533

第25章  数据分析库:Pandas 534

25.1  Pandas开发环境搭建. 534

25.2  样本数据集. 534

25.3  Pandas基础知识. 535

25.3.1 数据集的装载与基础操作. 535

25.3.2 查看数据集中的列. 536

25.3.3 查看数据集的行. 537

25.3.4 查看数据集单元格中的数据. 538

25.3.5 对数据集进行分组统计. 539

25.3.6 可视化统计数据. 540

25.4  Pandas数据类型. 541

25.4.1  创建Series 541

25.4.2 创建DataFrame 542

25.4.3 Series的基本操作. 543

25.4.4 Series的方法. 544

25.4.5 Series的条件过滤. 545

25.4.6 DataFrame的条件过滤. 546

25.5  小结. 547

25.6  实战与练习. 548

第五篇  Python Web爬虫技术

第26章  网络爬虫与Beautiful Soup 551

26.1  网络爬虫基础. 551

26.1.1 爬虫分类. 552

26.1.2 编写第1个网络爬虫. 552

26.1.3 保存抓取的数据. 555

26.1.4 从百度抓取海量比基尼美女图片. 557

26.2  HTML分析库:Beautiful Soup 560

26.2.1 如何使用Beautiful Soup 560

26.2.2 Tag对象的name和string属性. 562

26.2.3 读写标签属性. 563

26.2.4 用BeautifulSoup分析京东首页的HTML代码. 564

26.2.5 通过回调函数过滤标签. 565

26.3  支持下载队列的多线程网络爬虫. 566

26.4  小结. 568

26.5  实战与练习. 568

第27章  网络爬虫框架:Scrapy 570

27.1  Scrapy基础知识. 570

27.1.1 Scrapy简介. 570

27.1.2 Scrapy安装. 571

27.1.3 Scrapy Shell抓取Web资源. 571

27.1.4 XPath入门. 573

27.2  用Scrapy编写网络爬虫. 574

27.2.1 创建和使用Scrapy工程. 574

27.2.2 在PyCharm中使用Scrapy 575

27.2.3 使用Scrapy抓取数据并通过XPath指定解析规则. 576

27.2.4 将抓取到的数据保存为多种格式的文件. 577

27.3 小结. 578

27.4 实战与练习. 578

第六篇  Python项目实战

第28章  Web项目实战:基于 Flask的美团网. 581

28.1 项目概述. 581

28.1.1 项目效果演示. 581

28.1.2 项目工程结构. 582

28.2 美团网核心功能实现. 583

28.2.1 设计服务API 583

28.2.2 用Ajax技术与服务端交互. 584

28.3 Python与微信支付. 585

28.3.1 微信支付要准备的数据以及支付流程. 585

28.3.2 编写支付核心类WXPay 586

28.4 小结. 588

第29章  Web项目实战:基于Django的58同城. 589

29.1 项目效果演示. 589

29.2 操作MySQL数据库. 590

29.3 账号. 590

29.3.1 用户注册. 591

29.3.2 用户登录. 592

29.4 招聘页面. 594

29.5 二手车页面. 595

29.6 小结. 597

第30章  网络爬虫实战:天气预报服务API 598

30.1 项目效果演示. 598

30.2 建立MySQL数据库. 599

30.3 抓取天气预报数据. 599

30.4 编写天气预报服务API 600

30.5 实现Web版天气预报查询客户端. 601

30.6 小结. 601

第31章  爬虫项目实战:胸罩销售数据分析. 602

31.1 项目效果演示. 602

31.2 天猫胸罩销售数据. 604

31.2.1 天猫胸罩销售数据分析. 604

31.2.2 抓取天猫胸罩销售数据. 605

31.2.3 抓取胸罩商品列表. 605

31.2.4 将抓取的销售数据保存到SQLite数据库中. 606

31.3 京东胸罩销售数据. 607

31.3.1 京东胸罩销售数据分析. 607

31.3.2 抓取京东胸罩销售数据. 608

31.4 数据清洗. 609

31.5 数据分析与可视化. 611

31.5.1 用SQL语句分析胸罩(按罩杯尺寸)的销售比例. 611

31.5.2 用Pandas和Matplotlib对胸罩销售比例进行可视化分析. 612

31.5.3 按上胸围分析胸罩的销售比例. 613

31.5.4 罩杯和上胸围综合数据可视化分析. 614

31.5.5 统计哪一种颜色的胸罩卖得最好. 615

31.5.6 用盒状图与直方图表示罩杯与上胸围分布. 617

31.6 小结. 618

第32章  GUI项目实战:动态修改域名指向的IP 619

32.1  搭建开发环境. 619

32.2 项目效果演示. 619

32.3 获取公网IP 620

32.4 定时更新公网IP 621

32.5 更新域名对应的IP 622

32.6 小结. 623

第33章  游戏项目实战:俄罗斯方块. 624

33.1  搭建开发环境. 624

33.2 项目效果演示. 624

33.3 用户注册. 625

33.4 用户登录. 626

33.5 游戏界面绘制和渲染. 628

33.6 用按键控制游戏. 629

33.7 播放背景音乐. 630

33.8 用户积分. 631

33.9  小结. 632


本目录推荐