编程语言类别;运行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【编程语言、变量、垃圾回收机制】
编程语言分类:机器语言.汇编语言.高级语言. 机器语言:机器能直接识别的程序语言或指令代码(二进制指令),勿需经过翻译,每一操作码在计算机内部都有相应的电路来完成它 汇编语言:比机器语言略高级,用英文 ...
随机推荐
- 人工智能06 能计划的agent
能计划的agent 存储与计算 响应agent的动作功能几乎没有做任何计算.从本质上讲,这些agent执行的动作或者由他们的设计者.或者通过学习.或者通过演化过程.或者由以上几方面的组合来选择给他们的 ...
- cisco三层交换为vlan配置dhcp
dhcp(config)#vlan 2 dhcp(config-vlan)#name sales dhcp(config-vlan)#vlan 3 dhcp(config-vlan)#name ...
- ubuntu 16.04 server 扩容(LVM)磁盘
因为发现我的本地server出现磁盘满了的情况 所以进行lvm的扩容 1 查看磁盘情况 df -h 原本发现 /dev/mapper/ubuntu1604--vg-root 这个磁盘满了 所以要进行扩 ...
- 【转贴】GS464/GS464E
GS464/GS464E GS464为四发射64位结构,采用动态流水线.其1.0版本(简称GS464)为9级流水线结构,在龙芯3A.3B.2H中使用.其2.0版本(简称GS464E)为12级动态流水线 ...
- Chcp,Chdir(Cd),Chkdsk和Chkntfs
Chdir(缩写为cd)(全称猜测是change drive):显示或更改当前目录的名称; 注c:a/b\c/d 表示C盘下的a的b的c的d,目录可用' / '(正斜)或 ' \ '(反斜),参数只能 ...
- 【面试向】2019 年微软秋招笔试 Problem 3
Problem Check if a positive integer $n$ can be written as sum of a positive integer and reverse of t ...
- Reatful规范
Reatful规范 drf框架的作用 作用:写接口 什么是接口: URL(前后台信息交互的媒介) 明确了请求方式,提供对应后台所需参数,请求url链接可以得到后台的相应数据 怎么写接口: 参照某种规则 ...
- 关于Faster-RCNN训练细节
Faster RCNN训练: 四部训练法: Faster R-CNN,可以大致分为两个部分,一个是RPN网络,另一个是Fast R-CNN网络,前者是一种候选框(proposal)的推荐算法,而后者则 ...
- Spring配置redis及使用
一.redis简介 Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库 Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用. ...
- sql--ALTER
ALTER TABLE 语句 ALTER TABLE 语句用于在已有的表中添加.修改或删除列. SQL ALTER TABLE 语法 如需在表中添加列,请使用下列语法: ALTER TABLE tab ...