• 问题求解与Python程序设计
21年品牌 40万+商家 超1.5亿件商品

问题求解与Python程序设计

正版保障 假一赔十 可开发票

28.94 4.8折 59.8 全新

库存38件

广东广州
认证卖家担保交易快速发货售后保障

作者鲍春波

出版社清华大学出版社有限公司

ISBN9787302566656

出版时间2020-11

装帧平装

开本16开

定价59.8元

货号10979148

上书时间2024-10-29

灵感书店

三年老店
已实名 已认证 进店 收藏店铺

   商品详情   

品相描述:全新
商品描述
作者简介
鲍春波,男,河北衡水人。计算机应用技术专业工学博士,副教授。兴趣领域是程序设计语言、算法与数据结构、人工智能与大数据、计算机动画与游戏和虚拟现实技术等。有比较丰富的高校教学经验和大型软件开发经历。

目录
目录

第1章绪论——计算机与程序设计1
1.1什么是计算机1
1.2如何存储程序4
1.2.1存储单位4
1.2.2存储方式4
1.2.3存取操作5
1.2.4存储器分类5
1.2.5文件与目录5
1.3软件与程序设计7
1.4典型Python程序演示9
1.5程序设计方法11
1.5.1结构化方法11
1.5.2面向对象方法11
1.6程序设计语言12
1.7Python语言简介14
1.8Python程序设计的基本环境15
小结20
你学到了什么21
基本功训练21
实验指导21
第2章数据类型与变量——程序设计入门22
2.1在屏幕上输出文字信息22
2.1.1Python程序的基本框架24
2.1.2注释25
2.1.3中文编码25
2.1.4模块导入25
2.1.5转义序列26
2.1.6标准输出函数print27
2.1.7关键字与保留字28
2.1.8分隔符与空白符28
2.1.9海龟写字29
2.2计算两个固定整数的和与积30
2.2.1数据类型32
2.2.2对象与变量32
2.2.3标识符34
2.2.4算术运算和算术表达式34
2.2.5赋值语句35
2.2.6格式化输出36
2.2.7程序设计的风格37
2.3计算任意两个整数的和与积38
2.3.1标准输入函数39
2.3.2类型转换39
2.3.3测试用例40
2.3.4程序的顺序结构41
2.3.5可执行脚本42
2.4温度转换42
2.4.1整除和int转换44
2.4.2运算的优先级和结合性45
2.4.3变量初始化46
2.5求3个数的平均值46
2.5.1浮点型数据47
2.5.2控制浮点型数据的精度49
2.5.3再谈数据类型的转换51
2.6计算圆的周长和面积52
2.7绘制几何图形53
小结57
你学到了什么57
程序练习题58
项目设计61
实验指导61
问题求解与Python程序设计目录第3章判断与决策——选择程序设计62
3.1让成绩合格的学生通过62
3.1.1关系运算与逻辑判断64
3.1.2逻辑常量与逻辑变量65
3.1.3单分支选择结构66
3.1.4特殊形式的判断条件68
3.1.5比较两个实数的大小69
3.2按成绩把学生分成两组71
3.2.1双分支选择结构73
3.2.2条件表达式74
3.3按成绩把学生分成多组(百分制)75
3.3.1嵌套的if结构79
3.3.2嵌套的ifelse结构80
3.3.3多分支选择结构82
3.4按成绩把学生分成多组(五级制)83
3.4.1字符串和字符86
3.4.2字符数据的输入与输出87
3.5判断闰年问题88
3.5.1逻辑运算89
3.5.2逻辑运算的优先级和短路性91
3.6判断点的位置93
小结94
你学到了什么95
程序练习题95
项目设计98
实验指导98
第4章重复与迭代——循环程序设计99
4.1打印规则图形99
4.2自然数求和102
4.2.1迭代与赋值103
4.2.2更多的赋值运算105
4.2.3for循环106
4.3简单的学生成绩统计109
4.3.1标记控制的while循环110
4.3.2程序的容错能力112
4.3.3调试与测试114
4.3.4输入输出重定向116
4.4计算2的算术平方根116
4.4.1误差精度控制的while循环119
4.4.2再谈格式化输出120
4.5打印九九乘法表121
4.5.1循环嵌套122
4.5.2穷举法124
4.6列出素数125
4.7随机游戏模拟128
4.7.1随机数130
4.7.2自顶向下、逐步求精133
4.7.3结构化程序设计134
小结135
你学到了什么136
程序练习题136
项目设计140
实验指导140
第5章分而治之——函数程序设计141
5.1再次讨论猜数游戏模拟问题142
5.1.1模块化思想144
5.1.2函数定义144
5.1.3函数调用148
5.1.4关键字参数152
5.1.5默认参数153
5.1.6lambda表达式153
5.1.7函数测试154
5.1.8函数模块化154
5.2是非判断问题求解157
5.2.1判断函数157
5.2.2变量的作用域159
5.2.3函数调用堆栈160
5.3问题的递归求解162
5.3.1问题的递归描述163
5.3.2递归函数164
5.3.3尾递归170
5.4绘制几何图形的接口171
5.4.1接口设计176
5.4.2接口实现177
5.4.3私有变量和私有函数177
5.4.4__name__属性178
5.4.5项目开发180
小结181
你学到了什么181
程序练习题182
项目设计185
实验指导186
第6章客观对象描述——面向对象程序设计基础187
6.1学生成绩统计187
6.1.1客观对象的抽象190
6.1.2定义对象类191
6.1.3创建对象: 构造器191
6.1.4访问对象成员——点运算192
6.1.5UML类图193
6.1.6一点思考193
6.2有理数的四则运算194
6.2.1私有成员198
6.2.2运算符重载199
6.2.3静态成员和类成员200
6.2.4@property201
6.2.5析构器204
6.3身体质量指数计算器205
6.3.1tkinter208
6.3.2小构件Widget210
6.3.3事件驱动212
小结213
你学到了什么213
程序练习题214
项目设计215
实验指导215
第7章批量数据处理——序列程序设计216
7.1一组数据排序问题216
7.1.1一维数组与列表list221
7.1.2创建列表222
7.1.3访问列表元素226
7.1.4列表的输入输出230
7.1.5列表作为函数的参数231
7.1.6序列数据排序231
7.1.7函数作为函数的参数233
7.1.8元组234
7.1.9打包与解包235
7.1.10字典236
7.1.11可变长参数238
7.2三门课程成绩按总分排序问题239
7.2.1二维数组与列表242
7.2.2创建二维列表243
7.2.3二维列表元素的引用244
7.2.4二维列表的排序245
7.2.5二维列表作为函数的参数248
7.3查找成绩问题248
7.3.1学生对象列表252
7.3.2字符串类型253
7.3.3字符串的运算255
7.3.4字符串常量257
7.3.5正则表达式及其应用257
7.3.6线性查找260
7.3.7折半查找260
7.4在画布上绘制图形261
7.4.1画布264
7.4.2鼠标事件264
7.4.3菜单265
小结266
你学到了什么267
程序练习题267
项目设计271
实验指导271
第8章代码重用——面向对象程序设计进阶272
8.1课程管理272
8.1.1代码复用机制——组合281
8.1.2集合数据类型281
8.1.3可hash对象282
8.1.4对象的链式存储283
8.1.5类的嵌套与轻量级类285
8.2具有层次结构的规则几何图形286
8.2.1代码重用机制——继承290
8.2.2覆盖方法291
8.2.3多态性和动态绑定291
8.2.4抽象基类292
8.3一个文本编辑器293
8.3.1对话框296
8.3.2小构件Text297
小结297
你学到了什么298
程序练习题298
项目设计299
实验指导300
第9章对象的持久存储——文件I/O程序设计301
9.1给一个源程序文件做备份301
9.1.1文件与目录303
9.1.2文件格式304
9.1.3文件操作的一般步骤304
9.1.4文本文件基本读写方法306
9.1.5上下文管理器307
9.1.6命令行参数307
9.2把数据保存到文件中308
9.2.1格式化文本文件读写312
9.2.2JSON格式314
9.2.3二进制文件读写315
9.2.4pickle序列化317
9.2.5struct序列化318
9.3建立一个数据库320
9.3.1关系数据库和SQL语句326
9.3.2SQLite数据库管理系统327
9.3.3sqlite3模块328
小结329
你学到了什么330
程序练习题330
项目设计332
实验指导333
第10章数据分析与可视化——数组程序设计334
10.1速度计算问题334
10.1.1NumPy库337
10.1.2matplotlib库338
10.2鸢尾花数据统计339
10.2.1NumPy的自定义类型和类型转换341
10.2.2NumPy支持的描述性统计343
10.3运动员信息分析344
10.3.1Pandas347
10.3.2闭包348
10.3.3函数修饰器351
10.4文本数据分析353
10.4.1jieba355
10.4.2Wordcloud355
小结356
你学到了什么356
程序练习题357
项目实战357
实验指导358
后记——Python之禅359
附录APython快速参考362
附录BASCII码364
附录C转义序列365
附录D运算符的优先级366
附录E索引367
参考文献371

内容摘要
13软件与程序设计

假如你配置了一台不错的计算机,它有比较快的cPu,比较大的内存和硬盘,还有比较好的显示器、键盘和游戏操纵杆等,那么是不是只有这些好的硬件,计算机就可以很好地工作了呢?当然不可以!你必须要先安装一个操作系统——系统软件,如Windows xP或者windowrs 7Windows 10,也可以安装Linux 操作系统。如果你的计算机没有安装操作系统这样的系统软件,你将无法跟它打交道。如果你要用计算机写一篇报告,还必须安装一个能编辑排版的软件,如文字处理软件Word。如果你还要用计算机玩游戏,当然还要安装游戏软件。文字处理软件、游戏软件等是针对具体应朋的应用软件。如果计算机没有这些应用软件,就很难用计算机做一些具体的事情。

计算机之所以有各种各样的本领,一方面是有越来越好的硬件支持,但更重要的是有丰富的系统软件和应用软件。没有软件的计算机称为裸机,裸机什么也不能做。计算机用户、计算机硬件、计算机系统软件、计算机应用软件是整个计算机系统的组成部分,它们之间的关系可以用一个层次图表示,如图15所示。

从图中不难看出,计算机软件在整个计算机系统中的重要地位:软件是用户与计算机之间的桥梁,软件是用户操作计算机的接口。幸运的是,几十年来人们已经开发出了非常多的软件(包括系统软件和应用软件)可以供人们直接安装使用,当然除了开源/免费的软件外,使用软件都是要付费的。

思考题:试列出几款你所熟悉的应用软件。

再假如用户要求你给小学生提供一个做算术练习的环境。可能你马上会问有相应的软件可以用吗?回答是可能有也可能没有。如果没有该怎么办?那就只好自己动手了,实际上所有已有的软件都是前人开发的。开发软件正是计算机相关专业的学生将要从事的主要工作之一。要自己开发软件,首先要搞清楚到底什么是软件,然后再考虑怎么开发它。什么是计算机软件?简单来说,软件就是解决某个或某种问题的计算机程序(当然,完整的软件还包括软件的使用说明、帮助文档等),也就是说软件的核心就是程序。而所谓的程序就是解决那个问题的具体步骤构成的指令序列。如果一个问题比较复杂,它相应的软件就可能非常复杂,这种软件显然也不会轻而易举地做出来,必须经过精心地分析和设计才能实现,这要有一个过程。这个过程就是通常说的软件开发或者软件设计,或者更简单地说就是程序设计。因此,程序设计的含义就是给出用计算机解决问题的程序。本书不太区分软件和程序这两个词(当然严格来讲它们是不同的)

怎么进行软件开发或程序设计呢?软件开发或程序设计的过程是怎样的呢?当我们接到一个程序设计的任务时,通常要经历如图16所示的几个步骤。

(1)首先进行需求分析。这是一个非常重要的过程,在实际的软件开发过程(或软件公司)中,有专门的人做这个工作。他们试图清楚地理解用户要解决什么问题.并且以书面的形式写出要开发的软件到底要做什么。这要跟用户多次沟通交流才能确定。本书的问题都比较简单,它们的需求都是一些简单的陈述。

(2)系统分析,定义目标。根据需求规范,进

   相关推荐   

—  没有更多了  —

以下为对购买帮助不大的评价

此功能需要访问孔网APP才能使用
暂时不用
打开孔网APP