第 1 章 程序设计基本方法

整理的文章内容主要来源为高教版《计算机等级考试二级 Python》教程视频讲义,并且更正了原讲义中的错误的地方。
专栏文章索引如下:
考试大纲
第 1 章 程序设计基本方法
第 2 章 Python 语言基本语法元素
第 3 章 基本数据类型
第 4 章 程序的控制结构
第 5 章 函数和代码复用
第 6 章 组合数据类型
第 7 章 文件和数据格式化
第 8 章 Python 计算生态
第 9 章 Python 标准库概览
第 10 章 Python 第三方库使用
第 11 章 Python 第三方库纵览

1. 程序设计语言

1.1 程序设计语言概述

什么叫程序设计语言?
程序设计语言也叫编程语言,是计算机能够理解和识别用户意图的一种交互体系,它按照特定规则组织计算机指令,使用计算机能够自动进行各种运算处理。
什么叫计算机程序?
按照编程语言规则组织起来的一组计算机指令。
程序设计语言发展的三个阶段
在这里插入图片描述
编程语言为什么不用自然语言(如:中文)?
因为自然语言不够精确,存在计算机无法理解的二义性。自然语言具有不严密和模糊的特点,需要交流双方具有较高的识别能力才能懂。比如说:“夏天爱穿多少穿多少,冬天爱穿多少穿多少”。现在的计算机还不具备理解这种高强度的二义性语言。程序设计语言在语法上十分精密,在语义上定义准确,在规则上十分严格,可以保证语法含义的唯一性。

1.2 编译和解释

高级语言根据计算机执行机制的不同分为:静态语言脚本语言
静态语言:采用编译方式执行,如 C 语言,Java 语言等。
脚本语言:采用解释方式执行,如 JavaScript,Python 语言等。
什么是编译?
是将源代码转换成目标代码的过程。源代码是高级语言代码,目标代码是机器语言代码,执行编译的计算机程序称为编译器。
编译器将源代码转换成目标代码,计算机可以立即或稍后运行目标代码,运行目标代码时,程序获得输入并产生输出。
编译是一次性的翻译,一旦程序被编译,不再需要编译程序或者源代码,相当于“外语书籍的翻译”,一旦翻译完成就不需要再看原文了。
在这里插入图片描述

什么是解释?
解释是将源代码逐条转换成目标代码同时逐条运行目标代码的过程。执行解释的计算机程序称为“解释器”。
高级语言代码与数据一同输入给解释器,然后输出运行结果。
解释是每次程序运行都需要解释器和源代码,就好比开会时的“同声传译”。
在这里插入图片描述

1.2 计算机编程

为什么要学习计算机编程?
编程能够训练思维。编程思维又称计算机思维,是区别于以数学为代表的逻辑思维和以物理为代表的实证思维的第三种思维模式。编程是一个求解问题的过程,首先需要分析问题、抽象内容之间的交互关系、设计利用计算机求解问题的确定性方法,进而通过编写和代码调式解决问题,这是从抽象问题到解决问题的完成过程。
编程能够带来乐趣。计算机编程是展示自身思想和能力的舞台,能够将程序员的所思所想变为现实。
编程能够提高效率。使用 Python 可以实现一秒钟抠图,10 行代码汇总百万条数据。
编程带来就业机会。程序员是信息时代最重要的工作岗位之一,国内外程序员的缺口都在数十万级以上规模,就业前景广阔。

2. Python 语言概述

2.1 Python 语言的发展

Python 的创始人为吉多·范罗苏姆 (Gudio van Rossum),1989 年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的解释器程序,作为 ABC 语言的一种继承,因此诞生了Python 语言。Python 最早的可用版本诞生在 1991 年,经过广大程序员近 30 年的发展和应用,Python 语言已经成为当代计算机技术发展的重要标志之一。
Python 语言解释器的全部代码都是开源的,可以在 https://www.python.org/ 自由下载。
2000 年 10 月,Python2.0 版本发布,标志着 Python 完成了自身涅槃,开启了广泛应用的新时代。2010 年 Python2 系列发布了最后一个版本,主版本号为 2.7.
2008 年 12 月,Python3.0 发布,这个版本的解释器内部完全采用面向对象方式实现,在语法层面做了很多重大改进。这些重要修改所付出的代价是 3.x 系列版本代码无法向下兼容 2.x 的系列既有语法。
从 2008 年开始,用 Python 编写的几万个标准库和第三方库开始了版本升级过程,这个过程前后历时 8 年。2016 年,所有 Python 重要的标准库和第三方库都已经在 Python3.x 版本下进行演示和发展。Python 语言版本升级过程宣告结束。

2.2 Python 语言的特点

Python语言的重要特点:

  • Python 语法简单。Python 语法主要用来精确表达问题逻辑,接近自然语言,只有 35 个保留字,实现相同程序功能,Python 语言的代码行数仅相当于其他语言的 1/5 或 1/10.
  • Python 生态丰富。Python 解释器提供了几百个内置类和函数库,世界各地程序员通过开源的社区贡献了十几万个第三方函数库,几乎覆盖了计算机技术的各个领域。
  • Python 多语言集成。程序员不仅可以用 Python 语言编写程序,还能够将 C 或 C++ 等语言编写的代码封装后以 Python 语言方式使用,达到了对多种编程语言的集成。

Python 语言的其他特点:

  • 平台无关:Python 程序可以在任何安装了 Python 解释器的计算机环境中执行。因此,可以不经修改地实现跨操作系统运行。
  • 强制可读:Python 通过强制缩进来体现语句间的逻辑关系,显著提高了程序的可读性,进而增强了 Python 程序的可维护性。
  • 支持中文:Python3.x 版本采用 Unicode 编码表示所达所有字符信息。(Python2.x 不支持中文的使用,需要通过设置编码等方式间接支持)。
  • 模式多样:Python 同时支持面向过程和面向对象两种编程方式,也可以简单地通过语句执行,编程模式十分灵活。
  • 类库便捷:用好函数库时 Python 语言开发的核心,Python 类库从安装到使用都非常便捷。使用 pip 命令可以用一行代码安装类库。

3. Python 开发环境配置

3.1 Python 开发环境安装

运行 Python 程序的关键是要安装 Python 语言解释器。
下载网址:https://www.python.org/downloads
Python 是跨平台的编程语言,但是 Python 解释器不是跨平台的,需要为不同的操作系统选择与之对应的 Python 解释器。Python 计算机二级考试推荐使用的 Python 解释器为 Python3.5.3 至 Python3.9.10 版本。
在这里插入图片描述
Python 解释器的安装会启动一个引导过程,以 Win10 操作系统为例演示:
Python 解释器的安装:

  • 选择 python-3.5.3-amd64 安装文件,双击进行安装。
  • 点击 “Customize installation”,进行个性化安装
    在这里插入图片描述
  • 点击“Next”, 在 “Advanced Options” 中勾选前五个复选框。
    在这里插入图片描述
    在这里插入图片描述
  • 点击 “Back”,回到初始安装界面,点击 “Install Now” 等待安装即可。
    在这里插入图片描述
    Python 解释器的两个重要工具:
    IDLE:(Integrated development enviroment)Python 集成开发环境,用来编写和调试 Python代码。
    pip: Python 第三方库安装工具,用来在当前计算机上安装第三方库。

3.2 Python 程序的编辑方式

Python 程序的编辑方式常用的有两种:

  • Python 的交互式命令行程序,适合编写少量代码。
    打开方式: Windows 键+R 打开命令行窗口,输入 cmd.
    在这里插入图片描述
    在 DOS 窗口输入 python 即可进入到 Python 交互式命令行程序,或者直接找到 python.exe 双击运行。
    在这里插入图片描述
    在这里插入图片描述

  • Python 自带的 IDLE 集成开发环境(计算机二级要求使用 IDLE)
    在 “开始” 菜单中搜索关键词 ”IDLE” 找到快捷方法,启动后显示一个交互式Python 运行环境。
    在这里插入图片描述
    在菜单中选择 “File->New File” 选项。启动的窗口是一个 IDLE 提供的代码编辑器,具备Python 语法高亮辅助功能,可以用来编写几百行以内的代码。
    在这里插入图片描述

3.3 Python 程序的运行方式

Python程序的两种运行方式:
交互式:
利用 Python 解释器及时响应用户输入的代码并输出结果。一般用于调试少量代码。“>>>”提示符后输入代码即可运行,输入 exit() 或 quit() 可以退出,没有“>>>”的行表示运行结果。
文件式:
将 Python 程序写在一个或多个文件中,启动 Python 解释器批量执行文件中的代码。文件式是最常用的编程方式。
文件式程序在 IDLE 的编辑窗口中编写,在菜单中选择 ”Run->Run Module” 选项运行 Python 代码。
在这里插入图片描述
运行结果如下:
在这里插入图片描述

3.4 IPO 程序编写方法

无论程序规模是大是小,每个程序都有统一的运算模式,即:输入数据、处理数据、输出数据。这种朴素的运算模式形成了程序的基本编写方法:IPO(input、process、output)方法。IPO也是非常基本的程序设计方法,能够帮助初学者理解程序设计的开始过程,也就是了解程序的运算模式,从而建立程序设计的基本概念。
输入(input) 是一个程序的开始。程序要处理的数据有多种来源,形成了多种输入方式,包括文件输入、网络输入、控制台输入、交互界面输入、随机数据输入、内部参数输入等。
输出(output) 是程序展示运算结果的方式。程序的输出方式包括控制台输出、图形输出、文件输出、网络输出、操作系统内部变量输出等。
处理(process) 是程序对输入数据进行计算产生输出结果的过程。计算问题的处理方法统称为“算法”,它是程序最重要的组成部分,是程序的灵魂。

4. 选择题

(1)Python 是一种(B)类型的编程语言

  • A. 机器语言
  • B. 解释
  • C. 编译
  • D. 汇编语言

(2)Python 语句 print(‘世界,你好’) 的输出是(C)

  • A. (‘世界,你好’)
  • B. ‘世界,你好’
  • C. 世界,你好
  • D. 运行结果出错

(3)Python 语言通过(C)来体现语句之间的逻辑关系。

  • A. {}
  • B. ()
  • C. 缩进
  • D. 自动识别逻辑

(4)Python 解释器在语法上不支持(D)编程方式

  • A. 面向过程
  • B. 面向对象
  • C. 语句
  • D. 自然语言

(5)以下不属于 Python 语言特点的是(B)

  • A. 语法简洁
  • B. 依赖平台
  • C. 支持中文
  • D. 类库丰富

(6)关于 Python 版本,以下说法正确的是(B)

  • A. Python 3.x 是 Python 2.x 的扩充,语法层无明显改进
  • B. Python 3.x 代码无法向下兼容 Python 2.x 的既有语法
  • C. Python 2.x 和 Python 3.x 一样,依旧不断发展和完善
  • D. 以上说法都正确

(7)Python 的输入来源包括(D)

  • A. 文件输入
  • B. 控制台输入
  • C. 网络输入
  • D. 以上都是

(8)以下不是 IPO 模式的是(B)

  • A. input
  • B. program
  • C. process
  • D. output

(9)采用 IDLE 进行交互式编程,其中 “>>>” 符号是(C)

  • A. 运算操作符
  • B. 程序控制符
  • C. 命令提示符
  • D. 文件输入符

(10)关于 Python 语言,以下说法错误的是(B)

  • A. Python 语言由 Guido van Rossum 设计并领导开发
  • B. Python 语言由 PSF 组织所有,这是一个商业组织
  • C. Python 语言提倡开放开源理念
  • D. Python 语言的使用不需要付费,不存在商业风险

PDF 讲义下载链接如下:
链接:https://pan.baidu.com/s/1rc8d2_mmtci0o5vtCSl6rg

  • 31
    点赞
  • 45
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 11
    评论
程序设计方法》以Scheme语言为基础介绍计算和程序设计的一般理论和实践。《程序设计方法》由8个部分和7个独立的节(第8、13、18、24、29、33、38)组成。8个部分主要讨论程序设计,独立节则介绍一些与程序设计和计算相关的话题。《程序设计方法》第1至第3部分介绍了基于数据驱动的程序设计基础。第4部分介绍了程序设计中的抽象问题。第5部分和第6部分是与递归及累积相关的内容。《程序设计方法》的最后两部分说明了设计程序的意义,阐述了如何应用前6个部分所描述的程序设计诀窍,以及使用赋值语句必须特别小心的一些问题。 《程序设计方法》可作为高等院校计算机科学与技术专业“程序设计导论”和“计算导论”的教材和教学参考书,也可作为函数式语言和Scheme语言的入门教材。 目录 · · · · · · 第一部分 简单数据的处理 第1 学生、教师和计算机 3 第2 数、表达式和简单程序 5 2.1 数和算术运算 5 2.2 变量和程序 6 2.3 字处理问题 9 2.4 错误 10 2.5 设计程序 12 第3 程序就是函数加上变量定义 15 3.1 函数复合 15 3.2 变量定义 17 3.3 函数复合练习 18 第4 条件表达式和函数 20 4.1 布尔类型和关系 20 4.2 函数和条件测试 22 4.3 条件和条件函数 25 4.4 条件函数的设计 27 第5 符号信息 31 第6 复合数据之一:结构体 34 6.1 结构体 34 6.2 补充练习:绘制简单图形 36 6.3 结构体定义 38 6.4 数据定义 41 6.5 设计处理复合数据的函数 43 6.6 补充练习:圆和长方形的移动 46 6.7 补充练习:刽子手游戏 49 第7 数据的多样性 52 7.1 数据混合与区分 52 7.2 设计处理混合数据的函数 55 7.3 再论函数复合 58 7.4 补充练习:图形的移动 60 7.5 输入错误 61 第8 语法和语义 63 8.1 Scheme的词汇 63 8.2 Scheme的文法 64 8.3 Scheme的含义 65 8.4 错误 68 8.5 布尔值表达式 70 8.6 变量定义 71 8.7 结构体的定义 72 第二部分 任意数目数据的处理 第9 复合数据类型之二:表 77 9.1 表 77 9.2 任意长的表的数据定义 80 9.3 处理任意长的表 82 9.4 设计自引用数据定义的函数 84 9.5 更多关于简单表的例子 86 第10 表的进一步处理 90 10.1 返回表的函数 90 10.2 包含结构体的表 93 10.3 补充练习:移动图片 98 第11 自然数 100 11.1 定义自然数 100 11.2 处理任意大的自然数 101 11.3 补充练习:创建表,测试函数 103 11.4 自然数的另一种数据定义 104 11.5 更多与自然数有关的性质 108 第12 三论函数复合 110 12.1 设计复杂的程序 110 12.2 递归的辅助函数 111 12.3 问题泛化与函数泛化 114 12.4 补充练习:字母的重新排列 117 第13 用list构造表 119 第三部分 再论任意大数据的处理 第14 再论自引用数据定义 125 14.1 结构体中的结构体 125 14.2 补充练习:二叉搜索树 131 14.3 表中的表 135 14.4 补充练习:Scheme求值 137 第15 相互引用的数据定义 139 15.1 由结构体组成的表与结构体中的表 139 15.2 为相互引用的定义设计函数 144 15.3 补充练习:网页再谈 145 第16 反复精化设计 147 16.1 数据分析 147 16.2 定义数据类型,再改进它们 148 16.3 改进函数和程序 150 第17 处理两种复杂数据片段 152 17.1 同时处理两个表:第一种情况 152 17.2 同时处理两个表:第二种情况 154 17.3 同时处理两个表:第三种情况 156 17.4 函数的简化 159 17.5 设计读入两个复杂输入的函数 160 17.6 处理两个复杂输入的练习 161 17.7 补充练习:Scheme求值之二 164 17.8 相等与测试 165 第18 局部定义和辖域 172 18.1 用local组织程序 172 18.2 辖域和块结构 183 第四部分 抽象设计 第19 定义的相似性 189 19.1 函数的类似之处 189 19.2 数据定义的类似之处 195 第20 函数也是值 199 20.1 语法和语义 199 20.2 抽象函数和多态函数的合约 200 第21 抽象设计的例子 204 21.1 从实例中抽象 204 21.2 抽

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 11
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ReadThroughLife

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值