Python基础(零)

Python基础(零)
程序设计
程序设计相当于编程的整个过程,某种意义上可以等同于编程

程序设计的基本模型:

I(input)输入——P(process)处理——O(output)输出

在计算机世界,这一组模型非常普遍。

扩展延伸

游戏中的输入输出以及程序设计:

以大家经常玩的游戏为例,鼠标就是一个常见的输入设备,当你的鼠标移动并点击游戏里的攻击按钮,实际上就是一个输入的过程,程序根据你的攻击力,怪物的血量、防御等进行计算,最终输出结果,也就是怪物的血量下降。

攻击——根据攻击力计算伤害——怪物受伤

当血量下降到一定程序时判定为怪物死亡,玩家获得对应的奖励,这里则是一个条件语句的逻辑,如果怪物的血量为0,怪物死亡,玩家获得奖励。

If(怪物的血量为0): 怪物死亡

程序设计的基本步骤:

分析问题——划分边界——设计算法——编写程序——调试测试——升级维护

任何程序的设计基本离不开以上步骤

程序设计一些学习建议:

1、在写代码之前建议在word或者纸上理一遍思路,再开始敲代码.

(附:在写代码前 随时检查右下角输入法状态,如果是中文,请切换成英文,入乡随俗,2、包括Python绝大部分编程语言是外国人发明的,输入了中文符号会引起不可预知的错误)

3、思路(过程)比结果更重要,请重视学习的过程

4、书写代码的过程中养成写注释的好习惯,如变量所代表的具体含义等

5、变量命名选择有确切含义的英文单词为佳,再不济也是拼音(不规范,英文单词不仅规范还能提高英语水平),千万不要随意起名,变量就像你的名字,谁也不愿意起个名叫狗蛋

6、善用搜索引擎和翻译工具,遇到不认识的函数和英文单词,积极主动的进行查阅资料

7、少用甚至不用复制粘贴,一方面是不利于前期的学习,代码需要多敲才能熟练,另一方面,Python是一种对缩进非常敏感的语言(区别于其它编程语言),复制粘贴时非常容易粘入不必要的空格、空行,导致程序发生未知的错误!!!

扩展延伸

程序的概念:一组计算机能够识别和执行的指令

计算机是很“笨”的,如果你不告诉他他要做什么,他就什么也不会干,但是一旦下达了对应的指令,它会完成的非常快。

Python
Python的定义:Python是一种 解释型 面向对象 动态数据类型 的 高级 程序设计语言

扩展延伸

电路的逻辑只有0和1两个状态,所以计算机只认识0和1,我们所看到的计算机的一切(包括手机),这些形象生动的界面,实际上也是0和1,只是经过一定的算法的加工,这也映照了扩展阅读部分的计算机是很“笨”的这一结论,它在现阶段还无法理解人类的自然语言(如汉语、英语),需要通过一些手段人为的进行转换。

我们已经学习了零到九 十个数字,每逢十个数便进一,这就是所谓的十进制,

而0和1 两个数字 对应 False(假) 和 True(真),它们可以组成二进制,逢二进一。

举几个例子 二进制的1001换算成十进制即9,当然这些也只需要了解即可,不过聪明的你应该掌握了如何计算。

同理还有八进制(基本不怎么用到)和十六进制(颜色代码中用的比较多)

顺便学习一下英语,以下均为形容词,常以开头几个字母的形式出现,如Hex为十六进制的名词形式,还具有魔女、女巫、施加魔法的含义,看到了希望同学们能够认识。

Binary 二进制的
Octal 八进制的
Hexadecimal 十六进制的
Decimal 十进制的
下面部分有一定难度,选择性阅读,不要求掌握,记住这些名词,知道有这么一回事即可,随着学习的深入,掌握的编程语言数量的增加,就会逐渐对这些名词有所感觉。

之前提到了计算机世界中只有0和1,不认识英语和汉语,那我们输入的英语计算机如何识别呢?我们把计算机能够直接识别的语言称为机器语言(典型的低级语言),它只有0和1组成,试想一下,满屏幕的0和1,这简直是灾难性的,极大程度限制了编程的发展,所以在其之上又发展出了汇编语言(也是低级语言),加入了一些常见的字母和单词来替代特定的一串0和1组成的代码,如机器码的0000001woorrrmmm,就在汇编语言被定义为了ADD(加),但还远远不够,汇编语言仍然是面向机器的语言(也就是更适合机器去识别,不利于人的阅读)参考下图为一张网上随意搜索的汇编语言代码片段,感受一下,是不是仍旧不利于我们的阅读。

于是,就有了今天的高级语言(市面上常见的编程语言,基本属于高级语言,如C++、Python、Java、C#、Pascal等等,关于C语言,存在一定的争议,有人认为其对硬件丰富的可操作性,应该归为中级语言,介于低级和高级之间)

如果能够理解低级语言和高级语言,那么解释型语言和编译型语言也不难理解了,计算机只能识别机器语言,所以高级语言需要有一个“翻译”的过程,我们把我们写的高级语言代码片段称为源代码,把计算机可执行的代码片段称为目标代码

这个翻译的方法有两种,不难猜到,就是编译和解释,编译和解释的任务由编译器和解释器来完成。

解释的过程不产生目标代码,它逐条的将源代码进行解释,然后逐条运行,翻译和运行是同时的,所以效率会不是很高,不过可移植性比较好,解释型语言基本上都具备跨平台的特点。

编译的过程产生目标代码,编译器会接受你全部的源代码,然后通篇进行翻译,转换成目标代码,生成对应的计算机可以执行的可执行程序,运行效率比较高。

解释型语言

代表:Python、JavaScript

编译型语言:

代表:C、C++

存在争议——Java,Java一定程序上兼具两种类型的特点

所谓动态数据类型,对应动态类型语言,学习了变量相关知识之后会了解到,变量是有类型的,静态类型语言中需要手动去声明一个变量的类型,例如定义一个整数1,我就需要int number = 1,而动态类型语言,就省去了声明变量类型的过程,直接赋值即可,即number = 1就完成了定义整数1的操作。

容易混淆的概念,弱类型语言和强类型语言,甚至在部分少儿编程的书籍中,都有一些错误内容。

我们需要明确,Python是一种强类型语言

JavaScript则是一种典型的弱类型语言,下面是JavaScript的一个代码片段

<!DOCTYPE html>

<html>

<head>

       <title>弱类型语言</title>

</head>

<body>

       <script type="text/javascript">

              var a = "10";

              var b = 3;

              var c = a+b;

              alert(c);

       </script>

</body>

</html>

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

云无心鸟知还

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

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

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

打赏作者

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

抵扣说明:

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

余额充值