02-01 编程语言与Python介绍(全为重点)

1、编程语言分类

1.1 机器语言

  • 直接用二进制指令去编写程序,直接操作硬件(例:01010101)
执行效率:计算机无障碍理解,直接运行,执行效率最高。
开发效率:复杂,开发效率最低。
跨平台性:贴近、依赖具体的硬件,跨平台性差。(贴近代指需要详细了解计算机硬件细节、直接控制硬件)

1.2 汇编语言

  • 用英文标签代表一组二进制指令,本质仍是直接操作硬件。(拓展:操作系统是用汇编语言写的。)
执行效率:相对于机器语言,使用英文标签编写程序相对简单,执行效率高,但较之机器语言稍低
开发效率:仍然是直接操作硬件,比起机器语言来说,复杂度稍低,但复杂性依旧居高不下,所以开发效率依旧较低
跨平台性:同样依赖具体的硬件,跨平台性差。

1.3 高级语言

直接用人类能理解表达的方去写程序,高级语言不能直接被计算机理解,需要转化成二进制指令,并且把中间非常复杂的转换过程封装起来,只需要通过简单的接口就能间接的与计算机沟通。

编译型语言(例:C)(掌握)

1、类似于谷歌翻译,翻译工具就叫编译器。(例:C语言编译器GCC)
2、翻译过程:把程序所有的代码完完整整的编译成计算机能识别的二进制指令,之后操作系统会拿着编译好的二进制指令直接操作硬件。

解释性语言(例:Python)(掌握)

1、于同声传译,翻译工具就叫解释器。
2、过程:解释器读取程序源代码,解释一行,交给计算机执行一行。(了解:解释器解释之前,先转换成中间字节码,再交给解释器)

编译型与解释性比较

执行效率:解释型 < 编译型
开发效率:解释性 > 编译型
跨平台性:解释性 > 编译型

补充:混合型语言(Java)

  • Java是一类特殊的编程语言,Java程序也需要编译,但是却没有直接编译为机器语言,而是编译为字节码,然后再Java虚拟机上以解释方式执行字节码。

1.4 总结(掌握)

执行效率:机器 》汇编 》高级(编译 》 解释)
开发效率:机器《 汇编《 高级(编译《 解释)
跨平台性:解释型语言具有极强的跨平台性。
	由于我们开发的是应用程序,而应用程序必须运行与某一个平台之上,应用程序的快慢受限于平台(就好比F1赛车与宝马车同时跑在北京五环高速,都受限于道路环境,车速是差不多的)的快慢,并不是但从语言层面就可以提升整体执行效率的,于是开发效率、跨平台性才是我们优先考虑的问题。

2、python介绍

2.1 python解释器的发展史

详细介绍:https://zhuanlan.zhihu.com/p/99531609

现有解释器?还是先有语法?

  • 解释器是按照语法的前提制作出来的,只有有了语法,才能被解释执行。

python语言与python解释器的关系(掌握)

	python语言编写的程序最终都是被python解释器解释执行的,所以我们可以这么说python语言更多都是在调用python解释器的功能,所以解释器性能的高低很大程度上决定了python写出来的程序执行效率的高低。
	python解释器是一款应用软件,专门用来解释python这门语言的语法风格并加以执行。

py2.7版本为什么比3.0版本时间要晚?

3.0版本发布于2008年12月3号
2.7版本发布与2010年7月3号
	08年时就推出了3.0,2010年反而又推出了2.7?是因为3.0不向下兼容2.0,而很多公司已经基于2.0版本开发出了大量程序,公司已然投入了大量的人财物力,这就导致大家都拒绝升级3.0,无奈官方只能推出2.7过渡版本。

2.2 python解释器有那些种类?

官方的Python解释器本质就是基于C语言开发的一个软件,该软件的功能就是读取以.py结尾的文件内容,然后按照Guido定义好的语法和规则去翻译并执行相应的代码。这种用C实现的解释器称为CPython,它是python领域性能最好,应用最广泛的一款解释器,我们在后面提到的解释器指的都是Cpython解释器。但其实解释器作为一款应用软件,完全可以采用其他语言来开发,只要能解释python这门语言的语法即可。Python解释器的一些种类如下,简单了解即可

# Jython
JPython解释器是用JAVA编写的python解释器,可以直接把Python代码编译成Java字节码并执行,它不但使基于java的项目之上嵌入python脚本成为可能,同时也可以将java程序引入到python程序之中。

# IPython
IPython是基于CPython之上的一个交互式解释器,也就是说,IPython只是在交互方式上有所增强,但是执行Python代码的功能和CPython是完全一样的。这就好比很多国产浏览器虽然外观不同,但内核其实都是调用了IE。
CPython用>>>作为提示符,而IPython用In [序号]:作为提示符。

# PyPy
PyPy是Python开发者为了更好地Hack Python而用Python语言实现的Python解释器。PyPy提供了JIT编译器和沙盒功能,对Python代码进行动态编译(注意不是解释),因此运行速度比CPython还要快。

# IronPython
IronPython和Jython类似,只不过IronPython是运行在微软.Net平台上的Python解释器,可以直接把Python代码编译成.Net的字节码。

3、解释器多版本共存

python解释器部分文件夹介绍

1、DDLS:病毒程序需要获取该目录的控制权限
2、scripts:存放pip等exe可执行程序,用来安装第三方库。pip pip2 都是一样的功能,只是名字不同。

关于解释器的一些CMD命令操作

1、切换盘:D:
2、查看python3安装的第三方库目录位置:pip3 -V (前提:安装了path环境变量)
3、查看python2安装的第三方库目录位置:pip2 -V (前提:安装了path环境变量)

配置环境变量需要了解的细节

1、1环境变量寻找的优先级:计算机先从当前文件夹下找,找不到则到设置的环境变量中从前往后检索。
2、用户环境变量只对当前用户生效,系统环境变量争对所有用户都生效。
3、windows7中:使用分号,分隔不同的path路径

python库的虚拟环境介绍

  • 开发一款软件,需要定义虚拟环境,避免每个项目所需下载的第三方库在一个pip安装目录下,以免对原生库产生混乱的影响。

4、运行python程序的2种方式

交互式

直接进入python解释器,输入完一行代码一回车,就能得到程序即行结果, 主要用于调试。

脚本式

把程序写入文件中,然后用python解释器,解释执行其中的内容。(虽然文件后缀名不影响python解释器的解释执行,但是文件后缀名约定熟成要以.py结尾)
优点:程序可以永久保存
解释执行:把文件打开一行一行的执行。

总结

  • 交互式模式下可以即时得到代码的执行结果,调试程序十分方便
  • 若想讲代码永久保存下来,则必须将代码写入文件中。
  • 我们以后主要就是将代码写入文件中,偶尔需要打开交互式模式调试某段代码。

5、一个pyhton程序运行的三个步骤(重重点)

执行python程序经历三个步骤:python3 D:test.py

1、启动python解释器
2、解释器会发送系统调用,把test.py的内容从硬盘读入内存,此时test.py中的内容全为普通字符,没有任何语法意义。
3、解释器开始执行刚刚读入内存的test.py代码,开始识别python语法

执行文本编辑器经历三个步骤:D:test.py

1、启动文本编辑器
2、文本编辑器向发送系统调用,把test.py的内容读入内存
3、文本编辑器会将刚刚读入内存的内容控制层输出到屏幕上,让用户看到结果。

总结

  • 二者在前两个阶段做的事情完全一样,唯一不同的是第三个阶段对读入内存的python代码的处理方式不同。

6、注释

  • 注释是对关键性代码的解释说明,从而增强代码的可读性,且被注释的代码不会被执行。
  • 单行注释:# 注释内容
  • 多行注释:"""注释内容"""'''注释内容'''

7、IDE集成开发环境

IDE 英文全称 integrated development environment 继承开发环境

什么是集成开发环境?

实际开发中,除了编译器是必须的工具,我们往往还需要很多其他辅助软件。例如:编辑器、代码提示器、调试器、项目管理工具、漂亮的界面,这些工具通常被打包在一起,统一发布和安装,它们统称为集成开发环境

如何安装pycharm集成开发环境?

https://www.jianshu.com/p/eb606812765d

posted @ 2020-03-03 20:03  给你加马桶唱疏通  阅读(421)  评论(0编辑  收藏  举报