计算机基础之编程语言

一.编程语言的发展史

1.1 机器语言

简单来说就是一串二进制字符

优点:执行效率很高(因为是站在计算机的角度来开发的语言)

缺点:开发效率很慢,跨平台性差

1.2 汇编语言

就是用英文标签代替二进制字符

优点:执行效率较高

缺点:开发效率慢,跨平台性差

1.3 高级语言

就是站在人的角度,用人的思维逻辑和想法向操作系统发送指令,而不是直接操作硬件

优点:开发效率高

缺点:执行效率低

编译型:简单来说就是先翻译后执行,如C C++ GO

优点: 编译一次之后就可以拿着结果重复运行,而无需再次翻译,执行效率高于解释型

缺点: 编译型代码是针对某一个平台翻译的,当前平台翻译的结果无法拿到另外一个平台使用,即无法跨平台

解释型:就是翻译和执行同时进行,不生成可存储的目标代码,如python java

优点: 代码运行是依赖于解释器,不同平台有对应版本的解释器,所以代码是可以跨平台运行

缺点: 每次执行都需要翻译,执行效率低于编译型

本质上二者背后的最大区别是:对解释执行而言,程序运行时的控制权在解释器而不在用户程序;对编译执行而言,运行时的控制权在用户程序。

PS:总结

执行效率:机器语言>汇编语言>高级语言(编译型>解释型)

开发效率:机器语言<汇编语言<高级语言(编译型<解释型)

学习难度:机器语言>汇编语言>高级语言(编译型>解释型)

跨平台性:解释型>编译型

二.python的简单介绍

2.1 python的产生

Python的创始人为荷兰人吉多·范罗苏姆 (Guido van Rossum)人称, 1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,并且介于C和shell之间,语法能够像shell一样简洁,易学易用、可拓展性强,同时兼顾C的强大功能 。

2.2 python解释器的版本

主要分为:python2.X

python3.X

2.3 python执行的两种方式

交互式:有来有往,一次只返回一个结果,代码不可进行保存

脚本文件:以文件的方式来执行,代码可以保存

注意:python文件约定俗成将后缀名定义为.py,其实.py单纯就是文本文件

因为python良好的融合性,所以python又被称为“胶水语言”

2.4 python的环境配置

1.解释器的安装,如Cpython Jpython

2.常用的IDE工具pycharm(专门编写python代码)

优点:提升开发效率,操作简单方便

缺点:占用内存资源较大

单行注释:#

多行注释:“”“ ”“”/‘’‘ ’‘’ /快捷键ctrl+?

三.python语言入门之变量

3.1 什么是变量?

变:事物的状态在不断变化

量:描述事物的状态

所以变量就是描述不断变化的事物的状态

3.2 没有变量可以吗?

不可以

3.3 变量怎么用?

1 变量名

2 赋值符号

3 变量值

变量的命名规范:

1 只由字母 数字 下划线组成

2 不能用中文(可以执行但不能用)

3 不能以数字开头

4 区分大小写

变量名的命名风格:

1 驼峰体 如UserAge = ‘bing‘

2 下划线体 如user_age = 'bing'(建议用这种)

变量的三大特性:

变量值:value

变量的类型:type

内存地址:id

四.常量

4.1 什么是常量?

常量指在程序运行过程中不会改变的量

但是python其实没有常量

并且在python中约定俗成的将变量名全为大写的定义为常量

五.垃圾回收机制

5.1 什么是垃圾回收机制?

垃圾回收机制是python解释器自带的一种机制,专门用来回收不可用的变量值所占用的内存空间

5.2 为什么要用垃圾回收机制?

目的就是为了将无用的内存空间尽快的释放出来,提高内存资源的使用率

5.3 垃圾回收机制

1 引用计数

变量值被变量名关联的次数。

变量值有对应的变量名时引用计数为1;

若引用计数变为0则会被垃圾回收机制清除

2 标记清除

当应用程序可用的内存空间被耗尽的时,就会停止整个程序 ,先标记后清除

PS:简单的理解为当变量名同时被删除,那么只剩变量值之间的引用关系,但是变量名的标记都未被激活,则会被垃圾回收清楚

3 分代回收

将多次扫描后未被回收的量进行降级

分代回收采用的是用“空间换时间”的策略

4.小整数池

同一变量值指向多个变量名称,如a = 10 b =10

整数在程序中的使用非常广泛,Python为了优化速度,使用了小整数对象池, 避免为整数频繁申请和销毁内存空间。

Python 对小整数的定义是 [-5, 256] 这些整数对象是提前建立好的,不会被垃圾回收。

详细的垃圾回收机制的内容介绍可以参考如下的链接

取自小猿取经

https://www.cnblogs.com/xiaoyuanqujing/articles/11640905.html

原文地址:https://www.cnblogs.com/a736659557/p/11778299.html