编程语言类别;运行Python程序的方式;变量和常量;Python程序的垃圾回收机制;
编程语言分类
编程语言分为:
1.机器语言:直接用二进制的0和1和计算机(CPU)直接沟通交流,直接操作硬件。
2.汇编语言:用简单的英文标签来表示二进制数,直接操作硬件。
3.高级语言:它并不是指某一种语言,而是包括很多编程语言,比如:PHP、c/c++、Java、C#、python、go等
# 机器语言
优点:不需转换,计算机能直接读懂,执行速度快。
缺点:二进制代码复杂多样,理解甚难,开发效率低。
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]
# 汇编语言
优点:开发效率高于机器语言
缺点:执行效率较机器语言低
# 高级语言
高级语言可分为两类:
编译型:在应用源程序执行之前,就将源程序代码“翻译”成目标代码(机器语言),因此目标程序可以脱离其语言环境独立执行(编译后生成的可执行文件是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/11891411.html
编程语言类别;运行Python程序的方式;变量和常量;Python程序的垃圾回收机制;的更多相关文章
- 编程语言和python介绍, 变量,小整数池,垃圾回收机制
1.编程语言的发展史 计算机是基于电工作(基于高.低电平)1010010101011 1.机器语言 优点:执行速度够快 缺点:开发效率非常低 2.汇编语言(通过英文字符组成) 优点:执行效率相较于机器 ...
- 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代码执行,应用程序使用文件的三步骤,变量,常量,垃圾回收机制
编程语言分为 机器语言(直接用二进制01跟计算机直接沟通交流,直接操作硬件) 优点:计算机能够直接读懂,速度快 缺点:开发效率极低 汇编语言(用简单的英文标签来表示二进制数,直接操作硬件) 优点:开发 ...
- (编程语言+python+变量名+垃圾回收机制)*知识点
编程语言 从低级到高级的发展的过程 1.机器语言 计算机是基于电工作的.(基于高.低电平 1010010101011) 如果用机器语言表现一个字符的意思需要多段代码的行.但是计算机读取的快. 所以机器 ...
- Python程序运行流程与垃圾回收机制
Python程序运行流程 Python解释器首先将程序将py文件编译成一个字节码对象PyCodeObject(只存在于内存中).(当这个模块的 Python 代码执行完后,就会将编译结果保存到了pyc ...
- pycharm的基本使用 、 Python的注释语法,变量,常量,垃圾回收机制,数据类型
1.文件路径要注意 我把文件放在了D盘,如下图:你们可以根据自身情况设置 2.python环境要选择本地下载好的 如下图: 点击本机存在的环境,如果提示NO interpr,就点击第二步 如果还是没有 ...
- CSIC_716_20191101【编程语言、变量、垃圾回收机制】
编程语言分类:机器语言.汇编语言.高级语言. 机器语言:机器能直接识别的程序语言或指令代码(二进制指令),勿需经过翻译,每一操作码在计算机内部都有相应的电路来完成它 汇编语言:比机器语言略高级,用英文 ...
随机推荐
- sublime text 修改侧边栏字体大小
ctrl+shift_p 安装PackageResourceViewer,通过**PackageResourceViewer **这个插件来实现. 打开这个插件,选择Open Resource 输入T ...
- [Python3] 041 文件 持久化
目录 文件 持久化 1. pickle 1.1 例子1 1.2 例子2 1.3 注意 2. shelve 2.1 举例 2.2 特性 2.3 强制写回 2.4 使用 with 管理上下文环境 文件 持 ...
- 【转帖】2018全球公有云IaaS榜单出炉:阿里、腾讯、中国电信、金山云列前十
2018全球公有云IaaS榜单出炉:阿里.腾讯.中国电信.金山云列前十 https://news.cnblogs.com/n/628391/ 中国电信貌似就是用的华为的技术 阿里 腾讯 华为 金山 百 ...
- [转帖]influxdb和boltDB简介——MVCC+B+树,Go写成,Bolt类似于LMDB,这个被认为是在现代kye/value存储中最好的,influxdb后端存储有LevelDB换成了BoltDB
influxdb和boltDB简介——MVCC+B+树,Go写成,Bolt类似于LMDB,这个被认为是在现代kye/value存储中最好的,influxdb后端存储有LevelDB换成了BoltDB ...
- (public丶private丶protected) 的理解
public(公有):公有的类成员可以在任何地方被访问. protected(受保护):受保护的类成员则可以被其自身以及其子类和父类访问. private(私有):私有的类成员则只能被其定义所在的类访 ...
- Intellij IDEA中使用Debug调试
转自:https://blog.csdn.net/zj420964597/article/details/78662299只是为了方便学习技术,少走弯路,如果有异议,请留言,及时处理!!!
- mybatis-sql执行流程源码分析
1. SqlSessionFactory 与 SqlSession. 通过前面的章节对于mybatis 的介绍及使用,大家都能体会到SqlSession的重要性了吧, 没错,从表面上来看,咱们都是通过 ...
- 最大矩阵覆盖权值--(静态连续最大子段 (线段树) )-HDU(6638)Snowy Smile
这题是杭电多校2019第六场的题目 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6638 题意:给你平面上n个点,每个点都有权值(有负权),让你计算一 ...
- IDEA导入Eclipse 非Maven的Web项目
- 小程序存emoji表情 不改变数据库
1.小程序:提交前先编码 encodeURIComponent(data) 2.服务端解码(PHP) urldecode(data) 3.如果有空格字符串的,保存之前先对空格进行处理,不然空格在页面会 ...