操作系统是位于计算机硬件和应用软件之间的一个协调、管理、控制计算机硬件资源与软件资源的控制程序。
计算机本身是一件非常复杂的东西,其中包含很多部分,CPU,内存,磁盘等等,其中每个大部件里面又会包含很多小的部件,如果没有操作系统需要程序把计算机的各个部件全部研究清楚,比如I/O口高低电平,中断,寄存器等等才能够使用,需要花费大量的时间和精力来研究计算机硬件,严重影响软件的开发。所以操作系统应运而生。
主要的功能有两种,其中一是,控制硬件,把复杂的操作封装成优美简单的接口,给用户或应用程序去使用。二是实现了硬件共享,软件对硬件实现了有序的调用。如几个程序同时都想使用某一硬件资源,如果没有操作系统均为直接调用的话就会产生混乱,操作系统可以将这些无序变成有序。
强调:
我们以后开发的程序均为应用程序,其中应用程序是无法直接操作硬件的,但凡要操作硬件都是调用操作系统的接口。
直接用二进制编程写程序
优点:程序执行效率高
缺点:学习难度大,开发效率低
用英文标签取代二进制指令,本质还是直接操作硬件
优点:相对机器语言开发效率要高
缺点:执行效率相对于机器语言要低,学习难度大
直接用人能理解的语言跟语法风格来编写程序,程序员无需考虑复杂的硬件操作。用高级语言编写的程序归根到底还是要给计算机去执行,这就涉及到一个翻译的过程。高级语言→二进制指令,按照翻译方式不同可以分为以下两类:
编译型:
代表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语法。
变:现实世界中的状态时会发生改变的
量:衡量/记录现实世界中的状态,让计算机能够像人一样去识别世间万物
程序执行的本质就是一系列状态的变化,
定义变量分为三部分
变量名:用来引用变量值的,即凡是要用到变量值,都需要通过变量名
赋值符号(一个等号):赋值
变量值:即我们存放的数据是用来记录现实世界中的某种状态的。
a、变量名的命名应该能反映变量所记录的状态
b、由字母、数字、下划线组合,且第一个不能为数字
c、不能用关键字
a、驼峰体
AgeOfOldboy=73
b、下划线(针对变量名的命名风格,推荐使用下划线+纯小写字母)
age_of_oldboy=74
不变的量
强调:在Python中没有从语法意义上去强制性定义常量,如果在Python中需要定义常量,那应该将变量名全改为大写(约定俗成)。
eg:
x=10 #10身上引用计数加一
y=x #10身上引用计数加二
x=11 #10身上引用计数减一
del y #del是解除绑定,10身上引用计数减一
注:引用计数一旦为0,就是垃圾,会被Python的垃圾回收机制自动回收
Python的内置功能id(),每一个变量值都有其内存地址,而id是用来反映变量值在内存中的位置的,内存地址不同则id不同
id
print(id())
类型
print(type())
值
print(x)
判断值是否相等“==”
注:一个等号是赋值符号,两个等号时判断值是否相等
判断id是否相等“is”
eg:
x=11
y=x
print(x is y)
运行结果True
总结:a) id相等,值一定相等
b) 值相等,id却不一定相等
原文地址:https://www.cnblogs.com/xiaocao736427460/p/9092703.html