前言

第1章 程序设计和Python 1

1.1 计算机和程序1

1.1.1 “是什么”和“怎样做”的知识1

1.1.2 计算和程序3

1.1.3 编程语言7

1.2 Python语言简介10

1.2.1 Python语言的发展和应用10

1.2.2 Python系统和IDLE编程环境13

1.3 程序开发15

1.3.1 程序开发过程15

1.3.2 程序错误16

1.3.3 从问题到程序19

练习22

第2章 计算和编程初步 23

2.1 数值表达式和算术23

2.1.1 整数计算23

2.1.2 浮点数和复数27

2.2 数据对象、计算和类型29

2.2.1 对象和类型29

2.2.2 混合类型计算和类型转换30

2.2.3 数值类型和计算的简单总结31

2.3 内置函数和数学函数包32

2.3.1 函数及其使用33

2.3.2 处理数值的内置函数33

2.3.3 数学函数包34

2.4 字符串35

2.4.1 字符串和字符串类型35

2.4.2 字符串操作36

2.5 标识符、变量和赋值38

2.5.1 变量、名字和值38

2.5.2 简单顺序计算40

2.6 简单脚本程序41

2.6.1 脚本的编辑和执行41

2.6.2 程序和输入43

2.7 判断和条件控制45

2.7.1 条件判断和逻辑表达式45

2.7.2 if语句(条件语句)46

2.7.3 编程实例48

2.8 重复计算和循环49

2.8.1 重复计算50

2.8.2 for语句和重复计算51

2.8.3 while语句和迭代53

2.8.4 循环控制56

2.9 计算的抽象和函数56

2.9.1 计算的控制和抽象56

2.9.2 计算的抽象:函数57

2.9.3 函数定义和使用实例60

2.10 若干Python机制及其他62

2.10.1 已讨论的Python机制62

2.10.2 若干Python机制62

2.10.3 Python解释器64

2.11 补充材料64

2.11.1 语言细节65

2.11.2 编程技术70

练习71

第3章 基本编程技术 77

3.1 循环程序设计77

3.1.1 循环的需求和问题78

3.1.2 常见循环形式80

3.1.3 输入循环86

3.2 递归89

3.2.1 递归定义的函数89

3.2.2 乘幂的计算90

3.2.3 循环和递归91

3.2.4 斐波那契数列的计算92

3.2.5 最大公约数97

3.2.6 不容易用循环求解的递归问题100

3.2.7 更复杂的递归情况103

3.3 程序终止性103

3.3.1 调和级数的部分和104

3.3.2 程序终止性不可判定104

3.4 定义函数105

3.4.1 为什么定义函数105

3.4.2 学习定义函数108

3.4.3 函数:两种观点及其联系111

3.4.4 通用和专用的方法117

练习120

第4章 函数和程序结构 124

4.1 作用域、环境和状态124

4.1.1 作用域与函数定义124

4.1.2 环境和状态126

4.1.3 程序执行中的环境变化129

4.1.4 模块和环境133

4.2 函数定义和函数调用135

4.2.1 函数定义的结构135

4.2.2 函数调用中的问题140

4.2.3 带默认值形参和关键字实参143

4.3 编程框架和高阶函数145

4.3.1 编程框架和函数的函数参数145

4.3.2 匿名函数和lambda表达式149

4.3.3 随机数和模拟153

4.3.4 高阶函数155

4.4 程序的测试和调试156

4.4.1 测试157

4.4.2 排除程序里的错误162

4.4.3 使用IDLE的调试功能163

4.4.4 程序测试问题165

4.5 补充材料166

4.5.1 语言细节166

4.5.2 编程技术和规则169

练习169

第5章 数据的组织和操作 172

5.1 组合数据对象172

5.2 表173

5.2.1 简介174

5.2.2 表的构造和操作175

5.2.3 编程实例178

5.3 元组183

5.3.1 基础183

5.3.2 有理数程序包185

5.3.3 打包和拆分187

5.4 序列、不变对象和可变对象189

5.4.1 序列和序列操作189

5.4.2 描述式194

5.4.3 对象、变动和变量关联196

5.4.4 一些程序实例202

5.4.5 表处理204

5.5 字符串及其格式化生成209

5.5.1 字符串操作209

5.5.2 字符串的格式化213

5.5.3 一个简单的交互式计算器216

5.6 字典217

5.6.1 概念和操作218

5.6.2 字典与函数参数221

5.6.3 字典的应用实例222

5.7 集合224

5.7.1 概念和操作224

5.7.2 集合操作226

5.8 程序实例228

5.8.1 多项式计算228

5.8.2 另一个筛法实例231

5.9 若干语言和技术问题232

5.9.1 逻辑类型和逻辑判断232

5.9.2 函数参数的总结235

5.10 补充材料236

5.10.1 语言细节236

5.10.2 编程技术240

练习241

第6章 高级编程技术 248

6.1 文件:使用外存数据248

6.1.1 文件和输入/输出249

6.1.2 Python的文件功能251

6.1.3 文件处理程序实例256

6.2 生成器函数和闭包261

6.2.1 生成器函数261

6.2.2 闭包和装饰器265

6.2.3 编程实例274

6.3 异常和异常处理276

6.3.1 运行中的错误277

6.3.2 异常和异常处理279

6.3.3 异常处理的结构和技术282

6.3.4 try结构和raise语句详述284

6.3.5 预定义异常287

6.3.6 用异常作为控制机制288

6.4 数据处理和持久性291

6.4.1 文本生成291

6.4.2 数据记录和信息管理295

6.4.3 数据持久性300

6.4.4 with语句302

6.5 Python程序的几个问题304

6.5.1 Python程序及其运行304

6.5.2 程序格式307

6.5.3 怎样阅读Python手册308

6.6 补充材料309

6.6.1 语言细节309

6.6.2 编程技术313

练习315

第7章 数据抽象和面向对象编程 320

7.1 数据抽象、类和自定义类型320

7.1.1 类型和数据组合321

7.1.2 对象、类和类型323

7.2 Python的类和对象325

7.2.1 对象和操作325

7.2.2 类定义326

7.2.3 几点说明332

7.2.4 编程实例335

7.3 继承339

7.3.1 继承、基类和派生类340

7.3.2 编程实例344

7.3.3 多继承348

7.3.4 异常和类349

7.4 实例:学校人事管理350

7.4.1 概念分层和基础人员类350

7.4.2 具体人员类的设计和实现355

7.4.3 讨论358

7.5 特殊方法名和特殊功能的类359

7.5.1 容器类和迭代器359

*7.5.2 上下文管理器和with语句363

7.5.3 几个特殊方法名364

7.6 补充材料365

*7.6.1 Python类、对象和方法365

7.6.2 面向对象的技术和方法371

7.6.3 总结373

练习374

第8章 其他编程问题 377

8.1 图形用户界面377

8.1.1 人机界面的问题377

8.1.2 标准库包tkinter和图形用户界面380

*8.1.3 tkinter的ttk包400

8.1.4 GUI的简单应用和问题402

8.1.5 应用程序的GUI设计和实现404

8.1.6 总结和讨论412

8.2 并发程序设计414

8.2.1 并发程序415

8.2.2 Python并发库threading包418

8.2.3 定义自己的线程类422

8.2.4 并发程序的一些问题424

8.2.5 线程间通信和queue包431

8.2.6 一个GUI并发程序实例433

8.2.7 总结和讨论436

练习438

附录A Python语言速查 440

附录B 标准函数 444

附录C 书中使用的几个标准库包 448

附录D IDLE开发环境 449

参考文献及进一步阅读资料 452

python 计算订单_从问题到程序:用Python学编程和计算相关推荐

  1. 建筑师学python有用吗_作为建筑师,我们为什么要学编程?

    一个学生问一个大神:这年代是否只有编程和金融两条路走得会比较舒服? 大神说:不是,还有两条路 -- 做金融里会编程的.做编程里会金融的. 随着互联网和计算机科学给整个人类带来的技术爆炸,这个社会对各行 ...

  2. 三十岁学python可以吗_我30岁了,转行学编程可以吗? 排除法告诉你答案

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 好多读者在群里问过好几次 这个问题.但是这个问题太笼统了, 其实不好回答. 白月黑羽的这篇博客将根据的你的自身状况 不断的添加 自身条件的假设,采用排除法 ...

  3. python与材料计算公式_《从问题到程序:用Python学编程和计算》——2.11 补充材料-阿里云开发者社区...

    本节书摘来自华章计算机<从问题到程序:用Python学编程和计算>一书中的第2章,第2.11节,作者 裘宗燕,更多章节内容可以访问云栖社区"华章计算机"公众号查看. 2 ...

  4. 《从问题到程序:用Python学编程和计算》——第2章 计算和编程初步 2.1 数值表达式和算术...

    本节书摘来自华章计算机<从问题到程序:用Python学编程和计算>一书中的第2章,第2.1节,作者 裘宗燕,更多章节内容可以访问云栖社区"华章计算机"公众号查看. 第2 ...

  5. 《从问题到程序:用Python学编程和计算》——第3章 基本编程技术 3.1 循环程序设计...

    本节书摘来自华章计算机<从问题到程序:用Python学编程和计算>一书中的第3章,第3.1节,作者 裘宗燕,更多章节内容可以访问云栖社区"华章计算机"公众号查看. 第3 ...

  6. 《从问题到程序:用Python学编程和计算》——3.4 定义函数

    本节书摘来自华章计算机<从问题到程序:用Python学编程和计算>一书中的第3章,第3.4节,作者 裘宗燕,更多章节内容可以访问云栖社区"华章计算机"公众号查看. 3. ...

  7. 《从问题到程序:用Python学编程和计算》——1.3 程序开发

    本节书摘来自华章计算机<从问题到程序:用Python学编程和计算>一书中的第1章,第1.3节,作者 裘宗燕,更多章节内容可以访问云栖社区"华章计算机"公众号查看. 1. ...

  8. 《从问题到程序:用Python学编程和计算》——2.6 简单脚本程序

    本节书摘来自华章计算机<从问题到程序:用Python学编程和计算>一书中的第2章,第2.6节,作者 裘宗燕,更多章节内容可以访问云栖社区"华章计算机"公众号查看. 2. ...

  9. 《从问题到程序:用Python学编程和计算》——1.2 Python语言简介

    本节书摘来自华章计算机<从问题到程序:用Python学编程和计算>一书中的第1章,第1.2节,作者 裘宗燕,更多章节内容可以访问云栖社区"华章计算机"公众号查看. 1. ...

  10. 《从问题到程序:用Python学编程和计算》——2.4 字符串

    本节书摘来自华章计算机<从问题到程序:用Python学编程和计算>一书中的第2章,第2.4节,作者:裘宗燕 更多章节内容可以访问云栖社区"华章计算机"公众号查看. 2. ...

最新文章

  1. MFC调用批处理文件(.bat)
  2. 怎样把pdf转换成word
  3. python入门经典例题-Python入门_列表练习题
  4. 在bcb中添加activex控件_LinkedCell 属性介绍,OLEObjects 控件
  5. Install And Configure ColdFusion MX 6.1 on Windows
  6. 正式开通我的开源博客
  7. pyqt 鼠标离开按钮_小米 Smart Pad 体验:表面它是个鼠标垫,其实还是个鼠标垫...
  8. vue引用echarts
  9. IDEA 下载、安装、配置和案例
  10. flink-metric原理与实战
  11. 遥感数据存储格式 ----BSQ、 BIL、BIP及相互转换
  12. Pycharm 去掉拼音检查,大小写检查,自动补全不区分大小写
  13. python常用方法技巧使用总结
  14. 微信读书vscode插件_推荐 10 款有趣的 VSCode 插件
  15. vi/vim滚动屏幕
  16. 一分钟了解大数据的价值
  17. WideDeep论文翻译
  18. 记录一次git解决冲突的过程
  19. 如何迁移单台或多台服务器?
  20. BMA250 BMA253 ---国产的完美代替者 SC7A20 7A21-抬手亮屏传感器 技术指导代码分享欢迎索取

热门文章

  1. ESP8266-01/01S配对阿里云生活物联网教程(超详细)
  2. C++编程语言中类对象的赋值与复制介绍(一)
  3. 一个简单的SQL最优写法讨论(1)
  4. Linux下计算进程的CPU占用和内存占用的编程方法[转]
  5. 20171018 在小程序页面去获取用户的OpenID
  6. 【AAAI2021】纠结于联合学习中的建模方法?快来看看图网络显式建模!
  7. 【工大SCIR笔记】AAAI 2020 故事结局预测任务上的区分性句子建模
  8. 【图神经网络】向往的GAT(图注意力模型)
  9. 深度神经网络—超参数调试
  10. 《神经网络与深度学习》课程笔记(3)-- 神经网络基础之Python与向量化