操作系统+编程语言分类+变量day02

一、操作系统

1、什么是操作系统

  操作系统是位于计算机硬件和应用软件之间的一个协调、管理、控制计算机硬件资源与软件资源的控制程序。

2、为什么要有操作系统

  计算机本身是一件非常复杂的东西,其中包含很多部分,CPU,内存,磁盘等等,其中每个大部件里面又会包含很多小的部件,如果没有操作系统需要程序把计算机的各个部件全部研究清楚,比如I/O口高低电平,中断,寄存器等等才能够使用,需要花费大量的时间和精力来研究计算机硬件,严重影响软件的开发。所以操作系统应运而生。

  主要的功能有两种,其中一是,控制硬件,把复杂的操作封装成优美简单的接口,给用户或应用程序去使用。二是实现了硬件共享,软件对硬件实现了有序的调用。如几个程序同时都想使用某一硬件资源,如果没有操作系统均为直接调用的话就会产生混乱,操作系统可以将这些无序变成有序。

  强调:

    我们以后开发的程序均为应用程序,其中应用程序是无法直接操作硬件的,但凡要操作硬件都是调用操作系统的接口。

二、编程语言分类

1、机器语言

  直接用二进制编程写程序

    优点:程序执行效率高

    缺点:学习难度大,开发效率低

2、汇编语言

  用英文标签取代二进制指令,本质还是直接操作硬件

    优点:相对机器语言开发效率要高

    缺点:执行效率相对于机器语言要低,学习难度大

3、高级语言

  直接用人能理解的语言跟语法风格来编写程序,程序员无需考虑复杂的硬件操作。用高级语言编写的程序归根到底还是要给计算机去执行,这就涉及到一个翻译的过程。高级语言→二进制指令,按照翻译方式不同可以分为以下两类:

  编译型:

    代表C语言,优点:执行效率比解释型快;缺点:开发效率比解释型的低,调试麻烦,跨平台性差

  解释型:

    代表Python,优点:开发效率比编译型的高,方便调试,跨平台性高;缺点:执行效率比编译型的低

  注:

    执行效率再快也要受限于网速,于是我们现阶段要优先考虑开发效率。

    以上三种语言:

      学习难度由高到低

      执行效率由高到低

      开发效率由低到高

A、执行python程序的两种方式:

  a、交互式:

    优点:调试程序

    缺点:无法永久保存代码

  b、命令行:

    python3 D:\p1.py

    可以永久保存代码

B、python执行程序的三个阶段:python3 D:\p1.py

  a、先启动Python3解释器

  b、Python3解释器就像是文本编辑器一样,将文件内容 D:\p1.py从硬盘读入内存条

  c、Python3解释器解释执行文件代码

 

  注:Python3只有在第三个阶段才识别Python语法。

三、变量

1、什么是变量

  变:现实世界中的状态时会发生改变的

  量:衡量/记录现实世界中的状态,让计算机能够像人一样去识别世间万物

2、为什么要有变量

  程序执行的本质就是一系列状态的变化,

3、如何定义变量

  定义变量分为三部分

    变量名:用来引用变量值的,即凡是要用到变量值,都需要通过变量名

    赋值符号(一个等号):赋值

    变量值:即我们存放的数据是用来记录现实世界中的某种状态的。

4、变量名的命名规范

  a、变量名的命名应该能反映变量所记录的状态

  b、由字母、数字、下划线组合,且第一个不能为数字

  c、不能用关键字

5、变量名的两种风格

  a、驼峰体

   AgeOfOldboy=73

  b、下划线(针对变量名的命名风格,推荐使用下划线+纯小写字母)

   age_of_oldboy=74

6、常量

  不变的量

  强调:在Python中没有从语法意义上去强制性定义常量,如果在Python中需要定义常量,那应该将变量名全改为大写(约定俗成)。

7、Python的内存管理

eg:

  x=10    #10身上引用计数加一

  y=x      #10身上引用计数加二

  x=11    #10身上引用计数减一

  del y    #del是解除绑定,10身上引用计数减一

注:引用计数一旦为0,就是垃圾,会被Python的垃圾回收机制自动回收

  Python的内置功能id(),每一个变量值都有其内存地址,而id是用来反映变量值在内存中的位置的,内存地址不同则id不同

8、定义变量的三个特征

  id

    print(id())

  类型

    print(type())

  值

    print(x)

 

 判断值是否相等“==”

   注:一个等号是赋值符号,两个等号时判断值是否相等

 判断id是否相等“is”

  eg:

    x=11

    y=x

    print(x is y)

  运行结果True

总结:a)  id相等,值一定相等

    b)  值相等,id却不一定相等

 

posted @ 2018-05-26 13:34  墨草  阅读(105)  评论(0编辑  收藏  举报