新書推薦:
《
第二人生:找到重新定义人生的智慧
》
售價:NT$
440.0
《
唐朝三百年
》
售價:NT$
490.0
《
反操纵心理学:夺回人生主导权 拒绝被操纵
》
售價:NT$
249.0
《
同工异曲:跨文化阅读的启示(修订版)(师承钱锺书先生,比较文学入门,体量小但内容丰,案例文笔皆精彩)
》
售價:NT$
199.0
《
牛津立法研究手册
》
售價:NT$
1630.0
《
制度为什么重要:政治科学中的新制度主义(人文社科悦读坊)
》
售價:NT$
290.0
《
梦醒子:一位华北乡居者的人生(1857—1942))(第2版)
》
售價:NT$
340.0
《
啊哈!原来如此(中译本修订版)
》
售價:NT$
290.0
|
編輯推薦: |
本书介绍计算机科学基础知识、思维方法和Python编程,内容涵盖常用算法、简单数据结构、事件驱动编程、简单网络及数据库编程。
为了便于读者理解,精心组织知识点呈现顺序,将知识点分解,使用了大量的图表和示例,由浅入深地介绍计算思维中的关键问题。
不拘泥于计算机科学知识和Python编程的系统性和全面性,通过Python编程帮助读者理解计算机科学的基础知识和思维方法,按广度优先组织内容,以使读者能深入了解程序设计的关键问题和全貌。
附有大量的习题和练习,配套的电子资源有课程短视频、作业系统、电子教案和习题参考答案等,便于读者学习及编程实践。
|
內容簡介: |
本书是大学计算机相关专业的基础课教材,结合Python程序设计讲授计算机科学的基础知识和思维方法。全书共11章,内容包括计算机中的数据表示与计算、数据存储、流程控制、批量数据处理、函数、类、输入和输出、常用算法与简单数据结构、图形用户界面、Web、数据库编程等。 本书将知识点作了分解,由浅入深地安排教学内容,以便于教学。本书内容丰富,通俗易懂,既适合作为高等院校的计算机基础课教材,也可作为一般的计算机基础入门读物或参考书。
|
關於作者: |
王大东,男,东北大学计算机应用博士。从事计算机软件教学二十余年,具有比较丰富的工程实践经验,具有多年从基础程序设计到复杂程序设计教学经历。
|
目錄:
|
第1章数据表示与计算1
1.1Python程序设计基础1
1.1.1运行Python程序1
1.1.2Python程序执行过程4
1.2计算机中的数值表示5
1.2.1进位计数制5
1.2.2数制转换8
1.3算术运算10
1.3.1算术运算概述11
1.3.2算术运算符12
1.4逻辑运算12
1.4.1基本逻辑运算13
1.4.2逻辑运算概述15
1.4.3比较运算16
习题118
第2章数据存储22
2.1程序运行方式22
2.1.1计算机硬件结构22
2.1.2程序的执行25
2.2数据类型28
2.2.1数值型数据28
2.2.2文本型数据30
2.2.3字符串33
2.3变量37
2.3.1Python中的变量38
2.3.2表达式39
2.3.3赋值语句40
2.3.4注释45
习题246
第3章流程控制49
3.1选择结构49
3.1.1语句块49
3.1.2简单if语句50
3.1.3ifelse语句52
3.1.4ifelifelse语句53
3.2循环结构54
3.2.1while语句54
3.2.2whileelse语句59
3.2.3for语句60
3.2.4循环嵌套60
习题362
计算思维与Python应用编程目录第4章批量数据处理66
4.1列表66
4.1.1数组66
4.1.2创建列表67
4.1.3列表元素的引用70
4.1.4序列通用操作与函数73
4.1.5列表常用方法76
4.1.6字符串常用方法79
4.2元组82
4.2.1创建元组82
4.2.2使用元组83
4.2.3复数83
4.3字典84
4.3.1记录84
4.3.2创建字典85
4.3.3增加字典元素87
4.3.4删除字典元素87
4.3.5使用字典元素88
4.3.6集合91
习题494
第5章用函数实现模块化程序设计100
5.1函数调用100
5.1.1函数调用格式100
5.1.2不返回值的函数101
5.2定义函数101
5.2.1函数定义的一般形式102
5.2.2参数传递方式103
5.2.3参数类型105
5.2.4lambda()函数107
5.2.5pass语句107
5.3变量的作用域108
5.3.1局部变量108
5.3.2全局变量109
5.4Python模块110
5.4.1引入模块110
5.4.2模块化程序设计113
5.5Python标准库模块115
5.5.1math模块115
5.5.2random模块116
习题5118
第6章用类实现面向对象程序设计123
6.1定义类123
6.1.1类的定义与使用123
6.1.2定义方法125
6.2类的继承128
6.2.1派生新类128
6.2.2增强子类130
6.3变量访问控制131
6.3.1对象变量131
6.3.2类变量133
6.3.3私有变量133
习题6137
第7章输入和输出141
7.1设置字符串格式141
7.1.1字符串插入141
7.1.2使用format()方法格式化字符串143
7.1.3使用fstring格式字符串144
7.2文件145
7.2.1磁盘145
7.2.2文件读写过程146
7.2.3文件名147
7.2.4检查文件和文件夹148
7.3读写文本文件151
7.3.1文本文件与二进制文件152
7.3.2顺序读文本文件153
7.3.3顺序写文本文件156
7.4读写二进制文件158
7.4.1数据格式转换158
7.4.2顺序写二进制文件159
7.4.3顺序读二进制文件159
7.4.4随机读写二进制文件160
7.5异常161
7.5.1try/except语句162
7.5.2else和finally子句164
7.6图像与音频文件165
7.6.1WAV文件165
7.6.2BMP文件168
习题7171
第8章算法与数据结构176
8.1算法176
8.1.1算法概念176
8.1.2算法的表示方法177
8.1.3算法特征179
8.2基本算法179
8.2.1和小179
8.2.2求和181
8.2.3求积181
8.2.4排序182
8.2.5查找186
8.2.6迭代190
8.2.7递归191
8.2.8分治192
8.3基本数据结构193
8.3.1栈193
8.3.2队列196
8.3.3线性表198
8.4算法的评价200
习题8201
第9章图形用户界面205
9.1tkinter图形用户界面开发基础205
9.1.1窗口205
9.1.2标签206
9.1.3组件布局210
9.1.4表格布局211
9.1.5框架212
9.2基于事件的tkinter组件213
9.2.1按钮213
9.2.2mainloop()214
9.2.3单行文本框215
9.2.4事件模式和Event类216
9.2.5画布218
9.3面向对象的图形用户界面220
9.4数据可视化223
9.4.1matplotlib安装223
9.4.2使用plot()绘图224
9.4.3使用scatter()绘制散点图227
习题9228
第10章Web和搜索232
10.1万维网232
10.1.1浏览器与Web服务器233
10.1.2统一资源定位符233
10.1.3超文本传输协议234
10.1.4超文本标记语言235
10.2Python标准库模块238
10.2.1urllib.request模块239
10.2.2html.parser模块241
10.3正则表达式243
10.3.1正则表达式语法244
10.3.2标准库模块re247
习题10249
第11章数据库251
11.1数据库251
11.1.1关系数据模型251
11.1.2结构化查询语言252
11.1.3create table语句253
11.1.4insert into语句254
11.1.5select语句255
11.1.6delete语句257
11.1.7update语句258
11.2数据库编程258
11.2.1使用sqlite3创建数据库258
11.2.2执行SQL语句259
11.2.3提交数据库更改和关闭数据库260
11.2.4查询数据库260
习题11262
附录A开发环境安装与配置265
附录BPython关键字和内置函数272
附录C常用Python库273
C.1Image273
C.2socket277
C.3NumPy282
C.4OpenCV286
参考文献291
|
內容試閱:
|
计算思维是运用计算机科学的基础概念去求解问题、设计系统和理解人类的行为。它包括了涵盖计算机科学之广度的一系列思维活动。近些年,计算思维在其他相关学科中的影响越来越大。例如,机器学习已经改变了统计学,就数学尺度和维数而言,统计学应用于各类问题的规模在几年前还是不可想象的。像计算机科学家那样去思维远不止能为计算机编程,还要求能够在抽象的多个层次上进行思维。不仅是计算机科学专业的学生,所有专业的学生未来都应该具有“像计算机科学家一样思维”的初步能力。
本书作为大学低年级的一门计算机基础课程的教材,尽可能简单地介绍计算机科学基础知识和思维方法,强调解决问题、设计和编程等计算机科学的核心技能。本书没有使用传统的系统语言(如C 和Java),而是使用了脚本语言Python。Python非常灵活,实验非常容易,解决简单问题的方法简洁明了。Python的基本结构简单、干净、设计精良,它使读者能够专注于算法思维和程序设计的主要技能,而不会陷入晦涩难解的语言细节。在Python中学习的概念可以直接应用于后续学习的系统语言。虽然本书使用Python作为编程语言,但Python仅用于说明计算机科学的基础知识、设计和编程的基本原理,本书内容并未涉及Python的高级应用领域。
全书分为11章,内容包括:
第1章“数据表示与计算”,包括Python程序设计基础知识介绍、Python解释器使用方法、计算机中的数值表示方法、算术运算和逻辑运算。
第2章“数据存储”,包括计算机硬件结构、机器编码及执行过程;数值类型、文本类型和字符串在内存中的存储方式;Python中的变量、表达式和赋值语句。
第3章“流程控制”,包括语句块、选择结构中的if语句和ifelse语句,以及循环结构中的while语句、whileelse语句、for语句和循环嵌套。
第4章“批量数据处理”,包括数组和记录的基础知识介绍;列表、元组、字典和集合的创建及使用方法;列表、序列和字符串的常用方法。
第5章“用函数实现模块化程序设计”,包括函数定义及调用方法、函数参数类型、函数参数传递方式、lambda函数、变量的作用域、模块化程序设计思想、Python模块、Python标准库模块等内容。
第6章“用类实现面向对象程序设计”,包括类的定义与使用方法、派生新类及增强子类方法、类的变量访问控制方法。
第7章“输入和输出”,包括设置字符串格式控制输出格式、磁盘、文件读写过程、文件名和文件夹、顺序读写文本文件、顺序读写二进制文件、随机读写二进制文件、异常处理、图像和音频文件。
第8章“算法与数据结构”,包括算法的基本概念;算法的流程图表示法和伪代码表示法;算法的特征与评价;和小、求和、求积、迭代、递归、排序、查找和分治算法;栈、队列和线性表。
第9章“图形用户界面”,包括tkinter图形用户界面开发基础;组件窗口、标签、框架和布局;基于事件的tkinter组件;面向对象的图形用户界面;使用matplotlib库实现数据可视化。
第10章“Web和搜索”,包括Web工作模型、统一资源定位符、超文本传输协议、超文本标记语言、urllib.request模块、html.parser模块和正则表达式。
第11章“数据库”,包括数据库基本概念、关系数据库基础操作、SQL语句使用方法、使用sqlite3创建数据库等。
本书的前七章是基础部分,学习时间较少的读者可以着重学习这七章。本书在内容选取上没有特别注重知识的完备性,而是更注重初学者对概念的理解。由于篇幅有限,课后习题的答案未在书后列出,读者可在清华大学出版社网站下载相关电子文档及代码。
本书受“吉林师范大学教材出版基金”资助,在本书的编写过程中,编者参阅了书末参考文献中所列的各位老师的著作,清华大学出版社的编辑老师认真审阅并校对了稿件,在此表示衷心感谢。
由于作者水平有限,书中难免存在错漏之处,敬请读者批评指正。
编者2021年4月
|
|