本书通过大量的实际开发应用实例阐述Python语言的基础知识,介绍如何使用计算机进行问题求解、结构化编程以及面向对象编程。本书共8章,主要内容包括:计算机与问题求解简介,核心对象、变量、输入和输出,控制流结构,函数,数据处理,异常处理、随机数、递归等其他主题,面向对象编程,图形用户界面。此外,各节后都给出大量的习题、编程项目、实践问题等。
本书重点突出,内容丰富,适合作为计算机及相关专业学生的教材或教学参考书,也适合学习Python浯言的初学者使用。
出版者的话
译者序
前言
第1章 计算与问题求解简介
1.1 计算与Python简介
1.2 程序开发周期
1.2.1 在计算机上执行任务
1.2.2 程序规划
1.3 编程工具
1.3.1 流程图
1.3.2 伪代码
1.3.3 层次结构图
1.3.4 判断结构
1.3.5 判断纽约按数字编号街道方向的算法
1.3.6 循环结构
1.3.7 班级平均成绩算法
1.4 Python简介
1.4.1 启动IDLE
1.4.2 Python shell
1.4.3 Python代码编辑器
1.4.4 打开程序
第2章 核心对象、变量、输入和输出
2.1 数值
2.1.1 两种数值类型:整型和浮点型
2.1.2 算术运算符
2.1.3 print函数
2.1.4 变量
2.1.5 abs、int与round函数
2.1.6 增量赋值
2.1.7 其他两种整型运算符
2.1.8 括号与优先级
2.1.9 三种类型的错误
2.1.10 内存中的数值对象
2.2 字符串
2.2.1 字符串字面量
2.2.2 变量
2.2.3 索引和切片
2.2.4 反向索引
2.2.5 切片的默认边界
2.2.6 字符串连接
2.2.7 字符串重复
2.2.8 字符串函数和方法
2.2.9 链式方法
2.2.10 input函数
2.2.11 int、float、eval和str函数
2.2.12 内部文档
2.2.13 行延续
2.2.14 索引和切片越界
2.3 输出
2.3.1 print的可选参数sep
2.3.2 print的可选参数end
2.3.3 转义序列
2.3.4 域内输出对齐
2.3.5 使用format方法对齐输出
2.4 列表、元组和文件
2.4.1 列表对象
2.4.2 切片
2.4.3 split和join方法
2.4.4 文本文件
2.4.5 元组对象
2.4.6 嵌套列表
2.4.7 不可变和可变对象
2.4.8 列表复制
2.4.9 索引、删除和切片越界
关键术语和概念
编程项目
第3章 控制流结构
3.1 关系和逻辑运算符
3.1.1 ASCII值
3.1.2 关系运算符
3.1.3 列表元素的排序
3.1.4 逻辑运算符
3.1.5 短路求值
3.1.6 布尔数据类型
3.1.7 三种返回布尔值的方法
3.1.8 简化条件
3.2 判断结构
3.2.1 if-else语句
3.2.2 if语句
3.2.3 嵌套的if-else 语句
3.2.4 elif子句
3.2.5 使用if-elif-else语句的输入验证
3.2.6 True和False
3.3 while循环
3.3.1 while循环
3.3.2 break 语句
3.3.3 continue语句
3.3.4 创建菜单
3.3.5 无限循环
3.4 for循环
3.4.1 等差数列的循环遍历
3.4.2 range函数的步长值
3.4.3 for循环的嵌套
3.4.4 字符串中字符的循环遍历
3.4.5 遍历列表或元组元素的循环遍历
3.4.6 文本文件的行循环遍历
3.4.7 pass语句
3.4.8 使用文本文件的内容创建列表
关键术语和概念
编程项目
第4章 函数
4.1 函数(第一部分)
4.1.1 内建函数
4.1.2 用户自定义函数
4.1.3 具有一个参数的函数
4.1.4 向函数传值
4.1.5 具有多个参数的函数
4.1.6 返回布尔型或列表型的函数
4.1.7 无返回值的函数
4.1.8 无参数的函数
4.1.9 变量作用域
4.1.10 命名常量
4.1.11 库模块
4.2 函数(第二部分)
4.2.1 调用其他函数的函数
4.2.2 返回多个值的函数
4.2.3 列表解析
4.2.4 默认值
4.2.5 按参数名传递
4.2.6 自定义排序
4.2.7 Lambda表达式
4.2.8 sorted函数
4.3 程序设计
4.3.1 自顶向下的设计
4.3.2 结构化编程
4.3.3 结构化编程的优势
4.3.4 面向对象编程
4.3.5 相关引用
关键术语和概念
编程项目
第5章 数据处理
5.1 数据处理(第一部分)
5.1.1 读取文本文件
5.1.2 创建文本文件
5.1.3 向已有文本文件中添加行
5.1.4 修改文本文件中的元素
5.1.5 集合
5.1.6 集合推导
5.1.7 集合论方法
5.1.8 在文件中使用集合论的方法
5.2 数据处理(第二部分)
5.2.1 CSV文件
5.2.2 访问CSV文件中的数据
5.2.3 使用列表分析CSV文件中的数据
5.2.4 分析数值数据
5.2.5 Excel和CSV文件
5.3 字典
5.3.1 字典
5.3.2 dict函数
5.3.3 从文本文件中创建字典
5.3.4 使用字典作为频率表
5.3.5 在二进制文件中存储字典
5.3.6 值为字典的字典
5.3.7 从字典中获取顺序数据
5.3.8 使用元组作为字典的键
5.3.9 字典推导
关键术语和概念
编程项目
第6章 其他主题
6.1 异常处理
6.1.1 异常
6.1.2 try语句
6.1.3 else与finally子句
6.2 生成随机数
6.2.1 random模块中的函数
6.2.2 机会游戏
6.3 海龟图
6.3.1 坐标
6.3.2 turtle模块中的方法
6.3.3 矩形
6.3.4 旗帜
6.3.5 write方法
6.3.6 柱状图
6.3.7 折线图
6.4 递归
6.4.1 递归的指数计算函数
6.4.2 递归的回文生成函数
6.4.3 递归的分形计算函数
关键术语和概念
编程项目
第7章 面向对象编程
7.1 类与对象
7.1.1 内建类
7.1.2 用户自定义类
7.1.3 初始化方法的其他形式
7.1.4 类定义中方法的数量
7.1.5 对象列表
7.2 继承
7.2.1 学期成绩类
7.2.2 is-a关系
7.2.3 isinstance函数
7.2.4 向子类中添加新的实例变量
7.2.5 覆盖方法
7.2.6 多态
关键术语和概念
编程项目
第8章 图形用户界面
8.1 控件
8.1.1 什么是图形用户界面
8.1.2 按钮控件
8.1.3 标签控件
8.1.4 输入控件
8.1.5 只读输入控件
8.1.6 列表框控件
8.1.7 滚动条控件
8.2 网格布局管理器
8.2.1 网格
8.2.2 sticky属性
8.2.3 向列表框添加垂直滚动条
8.2.4 设计窗体布局
8.3 编写GUI程序
8.3.1 将TUI程序改写成GUI程序
8.3.2 将文件加载到列表框中
8.3.3 用面向对象方式编写GUI程序
关键术语和概念
编程项目
附录A ASCII值
附录B 保留字
附录C 安装Python和IDLE
奇数编号习题答案
索引
《精通HTML+CSS》内容简介:《精通HTML+CSS:100%网页设计与布局密码》深入浅出,结合实际案例系统地讲解了使用HTML和CSS进行网页设
《天工开物》是世界上第一部关于农业和手工业生产的综合性著作,是中国古代一部综合性的科学技术著作。本书由我国著名的自然科学
《Hadoop技术内幕:深入解析MapReduce架构设计与实现原理》内容简介:“Hadoop技术内幕”共两册,分别从源代码的角度对“Common+H
这本书分城市广场、邻里公园、小型公园和袖珍公园、大学校园户外空间、老年住宅区户外空间等部分,系统地阐述了城市空间设计的理
《Java编程艺术》共分5个部分。第1部分为新手上路篇,介绍Java编程基础和环境。第2部分为深入篇,将带领你走进Java面向对象编程大
人工智能、基因、能源、纳米材料、航空航天技术这五项技术,任何一项取得突破,都将会像工业革命一样大幅重塑我们的社会形态,而
《沙漠之城》内容简介:埃及,一个充满了妖艳而疯狂气息的沙漠之域。旅行探险家本尼西本想在这里体验一番奇妙的异域风情,探寻传说
《世界航母大百科》内容简介:本书以时间为主线,对绝大部分航空母舰逐一进行了介绍,每型配以简明扼要的文字说明、线图、历史照片
《上市公司股价崩盘风险研究》内容简介:“股价崩盘风险”是近年来财务学研究的一个热点问题。资本市场的有效运行关系到一国经济、
《我读:陪你读到世界尽头》内容简介:《我读:陪你读到世界尽头》是由梁文道主讲的书评集。用最简洁直白的方式带领读者领略好书的
《JAVA核心技术卷2:高级特征》是Java技术权威指南,全面覆盖Java技术的高级主题,包括流与文件、XML、网络、数据库编程、高级Swi
WithPHPfortheWorldWideWeb,ThirdEdition:VisualQuickStartGuide,readerscanstartfrom...
基于深度学习的图像语义分割技术 内容简介 图像语义分割(Image Semantic Segmentation,ISS)是涉及计算机视觉、模式识别与人工智能的研...
本書從廣告、海報、書籍到雜誌,分門別類訪談相關領域箇中翹楚。報紙雜誌類──像是《紐約時報雜誌》、GQ、Esquire、Eye、Zambla
《idea+提升创意力的设计诀窍书》内容简介:没有设计素材怎么办?如何在经费捉襟见肘的情况下做出好设计?怎样运用不同的设计软件
XML基础教程 本书特色 XML是由万维网联盟定义的一种语言,是表示结构化数据的行业标准,使得Internet上的数据相互交流更方便,让文件的内容更加显而易懂。...
运用已有的成熟框架进行项目开发,不但能提高代码的稳定性和兼容性,更能大大缩短项目的开发时间。本书详细讲解3个著名的Ajax开发
[内容简介] 洞察社交网络必读之作,本书深度剖析社交网络引发的三大现象,全面解读社交网络给我们生活、工作和世界带来的伟大变
◆全球工业设计教父,世界顶级创意咨询公司青蛙公司创始人哈特穆特·艾斯林格,首次揭秘设计战略如何塑造商业的未来,如何将创新
Describinghimselfasa"visualjackdaw",masterdesignerAlanFletcherhasspentalifetimec...