zoukankan      html  css  js  c++  java
  • 疫情环境下的网络学习笔记 python Day 10 正课 Day 03

    今日内容:python入门

    1. 编程语言介绍

      编程语言分类

    2. python介绍

    3. 解释器多版本共存

    4. 运行python程序的两种方式

    5. 一个python程序运行的三个步骤

    6. 注释

    7. ide

    编程语言分类

    编程语言介绍

    分类:

    • 机器语言

      计算机能直接听懂的语言,母语,二进制0101

      • 执行效率最高开发效率最低跨平台性差,依赖具体的硬件
    • 汇编语言

      用英文标签代表二进制指令,本质仍是直接操作硬件。

      • 比机器语言开发效率高一点点,开发效率低,同样依赖具体的硬件,跨平台性差
    • 高级语言

      经历复杂翻译,屏蔽大量细节,最后成为二进制被计算机识别,按照翻译方式的不同分为两种:编译型,编译型

      • 编译型:C语言,类似于谷歌翻译,用编译器把程序所有代码编译成计算机能识别的二进制指令,操作系统会拿着编译好的二进制指令直接操作硬件

        • 只要程序不改,只需要编译一次,就可以一直运行,因此执行效率高
        • 程序一旦修改,就需要重新编译,生成新的目标文件才能执行,因此开发效率低
        • 编译型的代码只针对一个平台翻译,当前平台的编译结果只能当前平台用,因此跨平台性差
      • 解释型:python,类似于同声传译,用解释器读取代码,解释一行执行一行

        • 每次运行都要解释一行执行一行,且不生成直接操作硬件的指令,因此执行效率低
        • 不需要编译生成目标文件,发生错误只需要直接改代码,因此开发效率高
        • 代码运行是依赖于解释器,不同平台有对应版本的解释器,只要拿着代码用不同的解释器就可以运行,所以解释型的跨平台性高
    • 总结

      1. 执行效率:机器语言 > 汇编语言 > 高级语言(编译型 > 解释型)
      2. 开发效率:机器语言 < 汇编语言 < 高级语言(编译型 < 解释型)
      3. 跨平台性:解释型具有极强的跨平台型
    • 单纯考虑语言层面的执行效率没有意义,因为语言最终要运行在计算机上或基于网络通讯

      整个程序的效率由其最低的效率决定

      工具不是最重要的

    python介绍

    python两层含义:

    • 代表python这门语言的语法风格
    • 专门用来解释该语法风格的应用程序,python解释器,有Cpython,jpython

    python2更新到2.7,python3更新到3.8.2

    安装python环境多版本共存,添加环境变量

    pep8语法规范

    虚拟环境

    下午

    运行python程序的两种方式

    1. 交互式,idle,cmd

      即时得到程序的运行结果,退出就没了,多用于调试

    2. 脚本方式

      把程序写到文件里,能永久保存,用python解释器解释执行其中内容

      • 约定俗成将文件后缀名设为 .py

    运行python应用程序的三个步骤

    运行c.py

    1. 先启动python解释器(应用程序的启动过程:找路径,读内存。。。)此时相当于启动了一个文本编辑器
    2. 解释器会发送系统调用,把py文件的内容从硬盘读入内存,此时py文件中的内容全部位普通字符,没有任何语法意义
    3. 解释器开始解释执行刚刚读入内存的py文件代码(真正开始识别py语法)

    文本编辑器读取 c.py 文件也经历了三个步骤

    1. 先启动文本编辑器
    2. 文本编辑器会发送系统调用,把c.py的内容从硬盘读入内存
    3. 文本编辑器将刚刚读入内存的内容控制输出到屏幕

    总结

    ​ 二者在前两个阶段做的事情完全一致

    ​ 唯一不同的就是第三个阶段对读入内存的python代码的处理方式不同

    集成开发环境

    IDE集成开发环境(integrated development environment),集成了开发所具备的很多功能

    pycharm

    虚拟环境

    注释

    对关键性代码解释说明

    被注释的代码不被执行

    1. 单行:使用 # 注释
    2. 多行:使用三引号注释 '''注释内容'''
  • 相关阅读:
    160-13. 罗马数字转整数
    159-118. 杨辉三角
    158-190. 颠倒二进制位
    157-461. 汉明距离
    156-412. Fizz Buzz
    155-278. 第一个错误的版本
    154-108. 将有序数组转换为二叉搜索树
    153-101. 对称二叉树
    152-234. 回文链表
    秒杀程序架构演进
  • 原文地址:https://www.cnblogs.com/telecasterfanclub/p/12403238.html
Copyright © 2011-2022 走看看