编程语言:
机器语言:直接用计算机能听懂的二进制指令去填写程序,需要了解硬件的细节
优点:执行效率高{不需要translate,直接运行}
缺点:开发效率低{全是二进制指令,难记忆}
汇编语言:用英文标签取代二进制指令去编写程序,同样需要了解硬件的细节{英文标签后面直接对应是二进制具体操作步骤,还是要了解硬件具体细节}
高级语言:直接用人类能理解的表达方式去编写程序,不需要了解硬件细节
编译型(C语言):相当于谷歌翻译,是把程序所有代码编译成计算机能识别的二进制指令,之后操作系统会拿着编译好的二进制指令直接操作硬件
优点:编译一次之后就可以拿着结果重复运行,而无需再次翻译,执行效率高于解释型
缺点:编译型代码是针对某一个平台翻译的,当前平台翻译的结果无法拿到另外一个平台使用,即无法跨平台
解释型(如python):
类似同声翻译,需要有一个解释器,解释器会读取程序代码,一边翻译一边执行
优点:代码运行是依赖于解释器,不同平台有对应版本的解释器,所以代码是可以跨平台运行
缺点:每次执行都需要翻译,执行效率低于编译型
执行效率:机器语言>汇编语言>高级语言(编译型>解释型)
开发效率:机器语言<汇编语言<高级语言(编译型<解释型)
运行python程序的两种方式
重点 (1)交互式
(2)把程序写到文件里然后交给解释器解释执行:python3 D: est.py
运行python程序的三个阶段:******
1. 先启动python解释器
2. 解释器会将test.py的内容当做普通的文本内容读入内存
3. 解释执行刚刚读入内存的代码,开始识别python语法
变量
1、什么是变量
量:记录事物的某种状态,既事物典型的特征
变:事物的状态是可以发生改变的
2、为何要变量
是为了让计算机能够像人一样记录事物的状态
3、如何变量
先定义
age=18
height=1.8
name=“egon”
sex=“male”
定义变量由三部分组成:
变量名:是访问到值得唯一方式
=:把值得内存地址绑定变量名
变量的值:使我们存储的数据,用来表示事物的某种状态
后引用
print(age)
垃圾回收机制
引用计数:增加
X=10{10引用计数为1}
Y=X{10引用计数为1}
引用计数:减少
X=20{10引用计数为1}
del Y{10引用计数为0}
python解释器会将引用计数为0的值回收