zoukankan      html  css  js  c++  java
  • 编程语言分类,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.分代回收:根据值得存活时间的不同,划为不同的等级,等级越高垃圾回收机制扫描的频率越低
  • 相关阅读:
    Leetcode 122. Best Time to Buy and Sell Stock II
    Leetcode 337. House Robber III
    Leetcode 213. House Robber II
    java 常用正则表达式总结
    eclipse异常解决:Errors occurred during the build.........
    关于匿名内部类的理解!
    接口/抽象类的思考
    IO流对文件的读取操作
    标准类的建立,以及用集合对标准类中的元素进行存取操作
    利用集合进行对元素的添加和删除
  • 原文地址:https://www.cnblogs.com/george-007/p/11109247.html
Copyright © 2011-2022 走看看