编程语言类别;运行Python程序的方式;变量和常量;Python程序的垃圾回收机制;

---恢复内容开始---

一、编程语言分类:

1.机器语言:直接用二进制的0和1和计算机(CPU)直接沟通交流,直接操作硬件。

优点:不需转换,计算机能直接读懂,执行速度快。

缺点:二进制代码复杂多样,理解甚难,开发效率低。

ps:站在奴隶的角度说奴隶能够听得懂的话

0000 代表  加载 (LOAD)

0001代表 存储(STORE)

暂存器部分事例

0000  代表暂存器 A

0001  代表暂存器  B

存储器部分事例

000000000000  代表地址为 0的存储器

000000000001  代表地址为 1的存储器

000000010000  代表地址为 16的存储器

100000000000  代表地址为 2^11的存储器

0000,0000,000000010000 代表 LOAD A, 16

0000,0000,000000000001 代表STORE B, 16

0001,0001,000000000001 代表 STORE B, 1[1]

2. 汇编语言:用简单的英文标签来表示二进制数,直接操作硬件。

优点:开发效率高于机器语言

缺点:执行效率较机器语言低

3. 高级语言:它并不是指某一种语言,而是包括很多编程语言,比如:PHP、c/c++、Java、C#、python、go等

高级语言可分为两类:

编译型:在应用源程序执行之前,就将源程序代码“翻译”成目标代码(机器语言),因此目标程序可以脱离其语言环境独立执行(编译后生成的可执行文件是CPU可理解的二进制代码组成的)。比如:c、c++ 、deiphi

优点:使用方便,程序执行效率较高。

缺点:开发效率低,一旦应用程序需要修改,必须先修改源代码,再重新编译生成目标文件才能执行,只有目标文件而没有源代码,修改很不方便,依赖编译器,跨平台性差些。

解释型:类似于“同声翻译”,应用程序源代码一边由相应语言解释器“翻译”成目标函数一边执行,不能生成可独立执行的执行文件,应用程序不能脱离解释器,但方法比较灵活,可以动态的调整修改应用程序。比如:Python、java、PHP

优点:开发效率高

缺点:执行效率低

学习难度

机器语言>>>汇编语言>>>高级语言

执行效率

机器语言>>>汇编语言>>>高级语言

开发效率

高级语言>>>汇编语言>>>机器语言

因此Python语言被称为“胶水语言”、“调包侠”。

二、运行Python程序的两种方式:

1、交互式

优点:输入内容立刻就有对应的返回结果

缺点:无法永久保存数据,离开Python应用程序,立刻消失。

2、命令行

优点:可以永久记忆

缺点:运行该文件相对麻烦些

运行一个PYthon文件需要的步骤(*****)

1)将Python解释器代码从硬盘读到内存(等价于双击word图标)

2)将你写好的Python文件从硬盘读到内存(等价于双击word文档)

3)解释器读取Python文件中的内容,解释成计算机能够识别的语句

(如果是一个普通文件,仅仅只会讲文件中的内容显示到屏幕上)

IDE开发编辑器

pycharm仅仅只是一个方便我们开发Python程序的工具而已

三、变量与常量

1.变量

量:衡量/记录事物的状态/特征

变:状态/特征是可以变化的

有了变量才能帮助人记录保存事物的某种状态或特征

变量必须先定义后调用,变量名不加引号。

变量三要素

id():返回的是一串数字,即是内存的地址

type():返回的是该变量对应值的类型

value():该变量指向内存中数据的值

2.常量

Python里没有常量,通常将全部用大写字母写成的变量名看作是常量(是Python程序员约定俗成的)

3.小整数池()

>>>a=257

>>>b=257

>>>id(a)

2919979319120

>>>id(b)

2919979576208

>>>c=256

>>>d=256

>>>id(c)

1642892736

>>>id(d)

1642892736

四、垃圾回收机制

1.引用计数:内存中的数据如果没有任何的变量名与其有绑定关系,那么会被自动回收;

2.标记清除:当内存快要被某个程序占满的时候,会自动触发;

3.分代回收:根据值的存货时间不同,划分不同的等级,等级越高,垃圾回收扫描的频率越低。

---恢复内容结束---

原文地址:https://www.cnblogs.com/zhangchaocoming/p/11105246.html

时间: 2024-10-10 17:17:54

编程语言类别;运行Python程序的方式;变量和常量;Python程序的垃圾回收机制;的相关文章

面向对象——概念(成员变量、静态变量、成员方法、静态方法、垃圾回收机制、重载、包)

静态变量和成员变量的区别: 1.成员变量描述的是对象的特征,包含在对象之中.不同的对象成员变量彼此独立.一个对象成员变量的改变,不会影响其他对象. 静态变量独立在对象之外,是所有对象共享的变量.静态变量改变后会影响所有对象. 2.成员变量只能通过对象.的方式访问.而静态变量,可以通过对象.的方式访问,也可以通过类名.的方式访问.所以静态变量也称为类变量 3.成员变量存放在堆空间中,静态变量存放在数据段中. 静态方法和成员方法的区别: 1.静态方法加载时机在对象之前,可以通过对象.和类名.的方式访

(一)Python入门-6面向对象编程:04__del__方法(析构函数)和垃圾回收机制-__call__方法和可调用对象

一:__del__方法(析构函数)和垃圾回收机制 __del__方法称为“析构方法”,用于实现对象被销毁时所需的操作.比如:释放对象 占用的资源,例如:打开的文件资源.网络连接等. Python实现自动的垃圾回收,当对象没有被引用时(引用计数为 0),由垃圾回收器 调用__del__方法. 我们也可以通过del 语句删除对象,从而保证调用__del__方法. 系统会自动提供__del__方法,一般不需要自定义析构方法. [操作] #析构函数 class Person: def __del__(s

Python垃圾回收机制--完美讲解!

转自: http://www.jianshu.com/p/1e375fb40506 先来个概述,第二部分的画述才是厉害的. Garbage collection(GC) 现在的高级语言如java,c#等,都采用了垃圾收集机制,而不再是c,c++里用户自己管理维护内存的方式.自己管理内存极其自由,可以任意申请内存,但如同一把双刃剑,为大量内存泄露,悬空指针等bug埋下隐患.对于一个字符串.列表.类甚至数值都是对象,且定位简单易用的语言,自然不会让用户去处理如何分配回收内存的问题.python里也同

简单理解python的垃圾回收机制

关键词:垃圾回收.引用计数.分代回收.标记-清除 前言:理解python中变量的定义:抽象理解python中变量的定义过程 1.垃圾回收机制的基本组成: python采用的是以引用计数为主,以分代回收和标记清除为辅的垃圾回收机制 2.详细分析垃圾回收机制: (1)首先是引用计数: 在python中,每创建一个对象,那么python解释器会自动为其设置一个特殊的变量,这个变量称为引用计数(初始值默认是1).一旦有一个新变量指向这个对象,那么这个引用计数的值就会加1.如果引用计数的值为0.那么pyt

python垃圾回收机制详解

提到"垃圾回收机制"大家都会联想到java的垃圾回收,今天给大家讲的不是java,而是python编程语言(http://www.maiziedu.com/course/python-px/),为何会有垃圾回收机制呢?主要是为了有效的释放内存,所以python采用了一种相对简单的垃圾回收机制,下面就具体介绍python垃圾回收机制: 引用计数 Python默认的垃圾收集机制是"引用计数",每个对象维护了一个ob_ref字段.它的优点是机制简单,当新的引用 指向该对象

python的垃圾回收机制(GC)

Hello, 大家好, 又出来冒头了. 今天想跟大家分享的是关于python的垃圾回收机制,虽然本人这会对该机制没有很深入的了解, 但是本着热爱分享的原则,还是囫囵吞枣地坐下记录分享吧, 万一分享的过程中开窍了呢.哈哈哈. 首先还是做一下概述吧: 我们都知道, 在做python的语言编程中, 相较于java, c++, 我们似乎很少去考虑到去做垃圾回收,内存释放的工作, 其实是python内部已经做了相应的回收机制, 不用我们自己操心去做内存释放.但是还是有必要了解一下.可以更加深入的了解pyt

(编程语言+python+变量名+垃圾回收机制)*知识点

编程语言 从低级到高级的发展的过程 1.机器语言 计算机是基于电工作的.(基于高.低电平 1010010101011) 如果用机器语言表现一个字符的意思需要多段代码的行.但是计算机读取的快. 所以机器语言的 优点:执行速度够快 缺点:开发效率非常低 2.汇编语言 汇编语言的属性,汇编语言通过英文字符组成 优点:执行效率相较于机器语言略低 缺点:开发效率相较于机器语言略高 举个例子: ; hello.asm section .data ; 数据段声明 msg db "Hello, world!&q

Python程序运行流程与垃圾回收机制

Python程序运行流程 Python解释器首先将程序将py文件编译成一个字节码对象PyCodeObject(只存在于内存中).(当这个模块的 Python 代码执行完后,就会将编译结果保存到了pyc文件中,这样下次就不用编译,直接加载到内存中.pyc文件只是PyCodeObject对象在硬盘上的表现形式.) py文件被编译后,接下来的工作就交由 Python虚拟机来执行字节码指令.Python虚拟机会从编译得到的PyCodeObject对象中依次读入每一条字节码指令,并在当前的上下文环境中执行

python中垃圾回收机制和对象变量的指向问题,深拷贝

变量.对象和引用 一个变量也就是变量名,当代码第一次赋值时就创建了他,之后的赋值将改变已创建的变量名的值. 变量类型,变量中没有类型之说,类型存在于对象中,变量只是在一个特定的时间对对象的引用. 变量使用,变量出现在表达式中会立即被对象所替代,所有变量在使用前就应该对其明确赋值. 例如 a = 3 为例 python将执行3个步骤完成这个请求 1.创建一个对象来代表3 2.创建一个一个变量a,如果他还没创建的话, 3.将变量与新的对象相连接 变量-引用-对象 对象的垃圾回收机制 当变量名被赋予了