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>

Python基础(零)相关推荐

  1. Python基础——零基础学Python

    在这里插入图片描述 一.Python语言家族 1 Introduction 1.1 Python 简介 Python 是一个高层次的结合了解释性.编译性.互动性和面向对象的脚本语言. 简单来说,Pyt ...

  2. python基础-零基础入门到精通

    编程语言是什么 其实,程序指的就是一系列指令,用来告诉计算机做什么,而编写程序的关键在于,我们需要用计算机可以理解的语言来提供这些指令. 虽然借助 Siri(Apple).Google Now(And ...

  3. 如何自学python基础-零基础如何自学成为Python高手?我有几点干货

    最近,很多小伙伴问我,如何才能自学成为 Python 高手?根据自己多年大厂工作经验和带领数千朋友的学习,我总结了几点小建议,直接上干货...... 1 如何克服从入门到放弃? 最好的方法是和身边的朋 ...

  4. 如何自学python基础-零基础小白该如何学习Python?

    准备:软件的版本选择,软件就是你的工具,而软件版本就是你的工作环境.所以在开始之前就要考虑一个问题,软件的版本选择.初学者我推荐Python3.6版本,这是最成熟的版本之一,基本上都会兼容. 一.基础 ...

  5. 如何自学python基础-零基础如何学习python

    python是一门非常简单易懂.上手比较快的编程语言,并且它是一门开源的语言,学习python就变得十分方便.下面的内容是由浅入深,建议按照先后顺序阅读学习. 0.Python简明教程 下载地址:py ...

  6. Python的零基础超详细讲解(第十三天)-Python的类与对象

    基础篇往期文章如下: Python的零基础超详细讲解(第一天)-Python简介以及下载 Python的零基础超详细讲解(第二天)-Python的基础语法1 Python的零基础超详细讲解(第三天)- ...

  7. Python的零基础超详细讲解(第十二天)-Python函数及使用

    基础篇往期文章: Python的零基础超详细讲解(第一天)-Python简介以及下载_编程简单学的博客-CSDN博客 Python的零基础超详细讲解(第二天)-Python的基础语法1_编程简单学的博 ...

  8. Python的零基础超详细讲解(第七天)-Python的数据的应用

    往期文章 Python的零基础超详细讲解(第一天)-Python简介以及下载_编程简单学的博客-CSDN博客 Python的零基础超详细讲解(第二天)-Python的基础语法1_编程简单学的博客-CS ...

  9. Python的零基础超详细讲解(第五天)-Python的运算符

    往期文章 Python的零基础超详细讲解(第一天)-Python简介以及下载_编程简单学的博客-CSDN博客 Python的零基础超详细讲解(第二天)-Python的基础语法1_编程简单学的博客-CS ...

  10. 零基础学python爬虫-零基础如何学爬虫技术?一篇带你入门!(理论+实操+荐书)...

    对于小白来说,爬虫可能是一件非常复杂.技术门槛很高的事情. 但掌握正确的方法,在短时间内做到能够爬取主流网站的数据,其实非常容易实现! 同时,你需要从一开始就有一个具体的目标!只有在目标的驱动下,你的 ...

最新文章

  1. 浅析Entity Framework Core2.0的日志记录与动态查询条件
  2. linux默认csh修改命令,Solaris中默认Shell的修改以及命令行补全的设置
  3. jQuery时间轴特效
  4. Objective-C利用协议实现回调函数(类似java的回调函数)
  5. 每天一小时python官方文档学习(六)————循环和条件控制的进阶用法
  6. Linux基线合规检查中各文件的作用及配置脚本
  7. Java中多实现接口的一个好处
  8. Mvn : Maven的依赖管理 依赖冲突 解决思路
  9. DOM 事件深入浅出(一)
  10. 自学python哪个书好-学习Python编程的最好的几本书
  11. 【015】基于51单片机的LCD1602流动字符串proteus仿真设计
  12. 取消一个项目git版本控制
  13. 通过SQL SERVER添加系统管理员帐号
  14. 用命令如何返回上级目录
  15. 中企海外周报 | 熊猫智能公交车将登陆欧洲,中比能源携手美国S公司签订3亿元电芯供货协议...
  16. 忆享科技聚焦|数字经济、视频云、AI数字人、全球5G用户……行业热点资讯一览
  17. DCDC基础(8)-- 同步BUCK芯片的电性能参数解读二
  18. 干货 | 诚迈科技联合联发科技、Linaro推出《Make it happen!联发科技曦力X20开发板技术公开课(上海站)》精彩回顾
  19. sql语句-既包含又包含
  20. kdj指标主要看哪个值_kdj指标K · D ·J 分别表示什么

热门文章

  1. C语言恶搞代码——不叫爸爸就关机代码
  2. 东华码蹄集第21周oj赛(光潮的幻像,分苹果,马走日,码哥猜想)
  3. 如何利用.m文件绘制不同条件下的U-I曲线
  4. PostGIS 空间数据合并
  5. 【软考】中级 | 数据库系统工程师 | 笔记总结
  6. 线性时态逻辑ctl_计算机系统形式化验证中的模型检测方法综述论文
  7. 推荐 30 款最好的免费项目管理软件
  8. 八十一、ElasticSearch详解(中)
  9. 保护网络安全的IPsec,怎么配置?配置步骤和参考命令奉上
  10. Windows10系统下软件丢失msvcr110.dll如何解决