编程语言分类,Python代码执行,应用程序使用文件的三步骤,变量,常量,垃圾回收机制
编程语言分为
机器语言(直接用二进制01跟计算机直接沟通交流,直接操作硬件)
优点:计算机能够直接读懂,速度快
缺点:开发效率极低 汇编语言(用简单的英文标签来表示二进制数,直接操作硬件)
优点:开发效率高于机器语言
缺点:执行效率较机器语言 高级语言(直接用人类识别的字符去编写程序,不能直接操作硬件,需要借助特殊工具转换成机器语言去操作硬件
高级语言分为 编译型语言:借助编译器转换成机器语言,一次编译生成执行文件再去执行,若要修改源代码需要重新编译生成执行文件,如C、C++、Delphi等
优点:执行效率高
缺点:开发效率低 解释型语言:借助解释器转换成机器语言,一边解释翻译一边执行,可以随时修改源代码,如Python、Java、PHP、Ruby等
优点:开发效率高
缺点:执行效率低 学习难度
机器语言>>>汇编语言>>>高级语言
执行效率
机器语言>>>汇编语言>>>高级语言
开发效率
高级语言>>>汇编语言>>>机器语言
Python代码执行
1.交互式
- - 控制台直接编写python代码
- - 1.打开终端 2.进入python解释器 3.编写代码--回车执行
优点:输入内容立刻就有对应的返回结果
缺点:无法永久保存数据 2.脚本式(命令行(文件的形式)
- - 文字编写python代码,把文件作为脚本交给解释器执行
- - 1.在文件中编写好代码 2.打开终端 3.用指定版本的接收器命令执行文件
优点:可以永久保存数据
缺点:暂时来看运行该文件有点麻烦 运行一个py文件需要走的步骤
1.将python解释器代码从硬盘读到内存(就等价于双击了word图标)
2.将你写好的py文件有硬盘读到内存(就等价于你双击了一个word文档)
3.解释器解释读取py文件中的内容,解释成计算机能够识别的语句
(如果是一个普通文本文件,仅仅只会将文件内容展示到屏幕上给用户查看,不会检测翻译文件内容)
ps:python解释器于普通的文本编辑器前面两步是一样的,仅仅第三步不一样(一个是解释语法,一个是文本展示)
应用程序使用文件的三步骤
1.打开应用程序:使应用程序运行在操作系统上 2.将文件内容加载到内存:应用程序往操作系统发送打开文件的指令 3.将数据从内存中显示到用户界面:应用程序将数据直接转化成人能识别的字符显示给人进行浏览 # 如果应用程序是python解释器:cpython 1.打开cpython解释器 2.将文件内容加载到内存 3.将数据从内存中拿到解释器中解释执行(存在语法检查) => 1.正常:执行的结果显示给用户 2.异常:错误信息显示给用户
变量
变量:一个可以动态描述物体状态的量
- - 程序中变量本质:在程序运行中,值可以发生改变的量
- - python中所有的量在程序运行中都可以发生改变,所有python中没有绝对的常量
为什么要使用变量:让计算机有记录事务状态的功能
定义变量:
变量名 = 变量值
# 变量名:记录状态的名
# =:赋值符号
# 变量值:记录的状态
命名规范:
# 1.由字母、数字、下划线组成
# 2.不能以数字开头
# 3.避免出现Python关键字
变量的三要素
1.value:该变量指向的内存当中数据的值
2.id():返回的是一串数字,这一串数字你可以直接理解为内存地址
3.type():返回的是该变量对应的数据的类型
使用变量
# 变量值 通过 变量名 直接访问就是访问值
#变量地址 通过 id(变量名) 访问的就是变量堆区的地址
#变量类型 通过 type(变量名) 访问的就是变量的类型
变量创建过程:1.堆区开辟空间存放 变量值 2.将存放 变量值 空间的地址提供给栈区 3.栈区为变量名开辟空间存放提供来的地址
常量(不可变的量)
python里面压根没有常量
通常将全大写的变量名看作常量(python程序员约定俗成的)
垃圾回收机制
垃圾回收机制
1.引用计数:内存中的数据如果没有任何的变量名与其有绑定关系,那么会被自动回收
2.标记清除:当内存快要被某个应用程序占满的时候,会自动触发
3.分代回收:根据值得存活时间的不同,划为不同的等级,等级越高垃圾回收机制扫描的频率越低
编程语言分类,Python代码执行,应用程序使用文件的三步骤,变量,常量,垃圾回收机制的更多相关文章
- (编程语言+python+变量名+垃圾回收机制)*知识点
编程语言 从低级到高级的发展的过程 1.机器语言 计算机是基于电工作的.(基于高.低电平 1010010101011) 如果用机器语言表现一个字符的意思需要多段代码的行.但是计算机读取的快. 所以机器 ...
- CSIC_716_20191101【编程语言、变量、垃圾回收机制】
编程语言分类:机器语言.汇编语言.高级语言. 机器语言:机器能直接识别的程序语言或指令代码(二进制指令),勿需经过翻译,每一操作码在计算机内部都有相应的电路来完成它 汇编语言:比机器语言略高级,用英文 ...
- Python垃圾回收机制--完美讲解!
转自: http://www.jianshu.com/p/1e375fb40506 先来个概述,第二部分的画述才是厉害的. Garbage collection(GC) 现在的高级语言如java,c# ...
- python垃圾回收机制(Garbage collection)
由于面试中遇到了垃圾回收的问题,转载学习和总结这个问题. 在C/C++中采用用户自己管理维护内存的方式.自己管理内存极其自由,可以任意申请内存,但也为大量内存泄露.悬空指针等bug埋下隐患. 因此在现 ...
- Python的 垃圾回收机制
垃圾回收 1. 小整数对象池 整数在程序中的使用非常广泛,Python为了优化速度,使用了小整数对象池, 避免为整数频繁申请和销毁内存空间. Python 对小整数的定义是 [-5, 257) 这些整 ...
- python中的垃圾回收机制及原理
序言: 来一起看看: 不同于C/C++,像Python这样的语言是不需要程序员写代码来管理内存的,它的GC(Garbage Collection)机制 实现了自动内存管理.GC做的事情就是解放程序员的 ...
- day02编程语言,Python语言介绍,Python解释器安装,环境变量,Python代码执行,pip,应用程序使用文件的三步骤,变量,变量的三大组成,比较,pycharm
复习 重点: 1.进制转换:二进制 与十六进制 2.内存分布:栈区 与堆区 # 二进制1111转换十六进制 => 8 4 2 1 => f 10101100111011 => 2a7 ...
- 编程语言类别;运行Python程序的方式;变量和常量;Python程序的垃圾回收机制;
目录 编程语言分类 运行Python程序的两种方式 1.交互式 变量与常量 1.变量 2.常量 3.小整数池 垃圾回收机制 编程语言分类 编程语言分为: 1.机器语言:直接用二进制的0和1和计算机(C ...
- 将Python代码嵌入C++程序进行编写
将Python代码嵌入C++程序进行编写的实例,python嵌入 把python嵌入的C++里面需要做一些步骤 安装python程序,这样才能使用python的头文件和库 在我们写的源文件中增加“Py ...
随机推荐
- mingetty - 控制台最小的 getty
总览 SYNOPSIS mingetty [--noclear] [--nonewline] [--noissue] [--nohangup] [--nohostname] [--long-hostn ...
- 判断是否是iframe框架打开登录页, iframe框架着顶部页面刷新
if (window != top) top.location.href = location.href;
- At grand 022 GCD序列构造 dp/floyd二进制变换最少费用
A diverse words指的是每一个字母在单词中出现的次数不超过1的单词 题目要求你求出字典序比当前给定单词大的字典序最小单词 1.如果给定的单词长度小于26 就遍历一次在单词尾部加上字典序最小 ...
- 【学习】014 深入理解Http协议
Http协议入门 什么是http协议 http协议: 对浏览器客户端 和 服务器端 之间数据传输的格式规范 查看http协议的工具 1)使用火狐的firebug插件(右键->firebug-& ...
- 唤醒 App
一.Deep Link 1.什么是 Deep Link? Deep Link 是 App 的深度连接,当单击链接或编程请求调用Web URI意图时,Android系统按顺序依次尝试以下每一个操作,直到 ...
- python的setup.py文件
最近工作需要,用Cython写了*.pyx扩展,并将其编译成C文件,最后转换为so扩展,供python引用使用 distutils 编译,建立一个setup.py 的脚本from distutils. ...
- java:Conllection中的List,ArrayList添加元素,删除元素,输出元素
java:Conllection中的List,ArrayList添加元素,删除元素,输出元素 //为list接口实例化 List<String> addlist = new ArrayLi ...
- java:Conllection(List,set,get,map,subList)使用
list中的contains:是否包含指定元素 list中的SubList: 返回列表中指定的 fromIndex(包括 )和 toIndex(不包括)之间的部分视图. List<String ...
- python-hasattr()、getattr()、setattr()函数的使用
python中hasattr().getattr().setattr()函数 class A(): name = 'python' def __init__(self): setattr(self._ ...
- react native 之 在现有的iOS工程中集成react native
在现有的iOS工程中集成react native, 或者说将react native引入到iOS 项目,是RN和iOS混合开发的必经之路 参考官网教程:https://reactnative.cn/d ...