« 上一篇下一篇 »

Python自学笔记4:第一周第1节-程序设计基本方法|

一、课程内容:

《Python语言程序设计》第一周第1节-程序设计基本方法

二、课程来源:

中国大学MOOC

三、主讲人:

嵩天-北京理工大学教授

四、主要内容:

1、计算机与程序设计

2、编译和解释

3、程序的基本编写方法

4、计算机编程(的好处)

图源:见水印

五、主要内容1:计算机与程序设计

1、计算机的概念:

计算机是根据指令操作数据的设备。计算机有两个特性,分别是“功能性”和“可编程性”。

“功能性”是指:对数据的操作,表现为数据计算、输入输出处理和结果存储等。

“可编程性”是指:根据一系列指令自动地、可预测地、准确地完成操作者的意图。

(只有功能却不可编程的设备不能称为计算机,例如扫描仪这样的设备,内部也有精密的芯片用于处理图像和控制精度等,但是不可编程,只能依附于计算机,作为计算机的输入设备)

图源:见水印

图源:见水印

计算机的进步史,基本与英特尔(Intel)创始人之一戈登·摩尔(Gordon Moore)于1965提出的“摩尔定律”相符,这是计算机发展史上最重要的预测法则。(也有人分析称摩尔定律似乎已经失效,毕竟这只是一种主观性的预测法则,而人类科技的进步总会有遇到瓶颈的时候)

图源:见水印

2、程序设计

程序设计是计算机可编程性的体现。程序设计,亦称编程,是深度应用计算机的主要手段。

图源:见水印

3、程序设计语言

程序设计语言是一种用于交互(交流)的人造语言

程序设计语言,亦称编程语言,程序设计的具体实现方式。编程语言相比自然语言更简单、更严谨、更精确(Python语言的确比较简单,其“保留字”只有33个英文单词,语法规则据说只有十几种,后续学习中详细归纳)。编程语言主要用于人类和计算机之间的交互,部分专家认为未来的编程语言有可能用于人与人之间的交互。

图源:见水印

编程语言种类很多,但生命力强劲的却不多。

编程语言有超过600钟,绝大部分都不再被使用。第一个被广泛使用的编程语言是C语言Python语言诞生于1990年,它是最流行最好用的编程语言(这...会不会太绝对了?)

图源:见水印

六、主要内容2:编译和解释

编译解释,都属于编程语言的执行方式,要理解这个问题,应该先了解“源代码”和“目标代码”的概念。

源代码:采用某种编程语言编写的计算机程序,人类可读。例如:result = 2+3 字面意思可知,是输出“2+3”的运算结果。

目标代码:计算机可直接执行,人类不可读(设计计算机本身的专家除外)。例如二进制编码:11010010 00111011。

图源:见水印

1、编译

将源代码一次性转换成目标代码的过程。执行编译过程的程序叫做编译器。

一次性翻译,之后不再需要源代码,类似于英文翻译、笔译。

(一般电脑安装各类软件的过程应该就属于编译,通过执行“.exe”之类的文件,将程序源代码一次性转换成目标代码)

图源:见水印

2、解释

将源代码逐条转换成目标代码,同时逐条运行的过程。执行解释过程的程序叫做解释器。

每次程序运行时随翻译随执行,类似实时的同声传译。

图源:见水印

3、静态语言和脚本语言

根据执行方式不同,编程语言分为两类,优势各有不同。

静态语言:使用编译执行的编程语言,例如C/C++语言、Java语言。优势在于,编译器一次性生成目标代码,优化更充分,程序运行速度更快。

脚本语言:使用解释执行的编程语言,例如Python语言、JavaScript语言、PHP语言。优势在于执行程序时需要源代码,维护更灵活,便于跨多个操作系统平台。

图源:见水印

七、主要内容3:程序的基本编写方法

1、程序的基本编写方法被称为“IPO

图源:见水印

I:Input 输入,程序的输入。文件输入、网络输入、控制台输入、交互界面输入、内部参数输入等。输入是一个程序的开始。

P:Process 处理,程序的主要逻辑。处理是程序对输入数据进行计算产生输出结果的过程,处理方法统称为算法,它是程序最重要的部分。算法是一个程序的灵魂。

O:Output 输出,程序的输出。控制台输出、图形输出、文件输出、网络输出、操作系统内部变量输出等。输出是程序展示运算结果的方式。

2、问题的计算部分

一个待解决问题中,可以用程序辅助完成的部分(这是需要优先确定的)

计算机只能解决计算问题,即问题的计算部分。一个问题可能有多种角度理解,产生不同的计算部分。问题的计算部分一般都有输入、处理和输出

图源:见水印

3、编程解决问题的步骤

6个步骤:

分析问题:分析问题的计算部分,想清楚;

划分边界:划分问题的功能边界,规划IPO;

设计算法:设计问题的求解算法,关注算法;

编写程序:编写问题的计算程序,编程序;

调试测试:调试程序使正确运行,运行调试;

升级维护:适应问题的升级维护,更新完善。

求解计算问题可以精简为3个步骤

确定IPO:明确计算部分及功能边界;

编写程序:将计算求解的设计变成现实;

调试程序:确保程序按照正确的逻辑能够正确运行。

图源:见水印

八、主要内容4:计算机编程

我个人理解:这个部分主要还是帮助学生树立学习编程的信心、培养学习编程的兴趣,罗列了一大堆学习编程的好处,略...

图源:见水印

图源:见水印

九、学习体会

这一节课,主要讲解入门的基础概念,并先导性的帮助学生树立编程的先决原则

比如,明确告知Python编程语言是一种采用解释执行方式的脚本语言,维护灵活,并可跨多个操作系统平台,编程前要首先明确程序是让计算机来执行的,而计算机是用来解决问题的计算部分的,不可计算的部分,程序无法解决,需要理顺求解计算问题的输入、执行、输出的各个环节边界,从而确定编程的基本逻辑规则。

此外,再次强调,“编程是件很有趣的事儿”,“掌握方法就很容易”,帮学生树立信心。

编程作为一件很“精确”的事情,逻辑性、准确性是非常重要的,这节课可以帮助我很好的理解并树立基本概念和观念。

图源:见水印

另:今天22:12开始学习和做笔记,等笔记写完,已经次日00:22,其实这节课讲的很快,但是笔记转录,还有部分内容按照我个人认为更易于理解的方式调整顺序,耗费了不少时间。连续熬夜真困啊...

明天周日,休息一下,周一继续...