码迷,mamicode.com
首页 > 编程语言 > 详细

python学习之路01

时间:2018-08-27 21:52:48      阅读:189      评论:0      收藏:0      [点我收藏+]

标签:文件   词法分析   加载   动态链接库   url   djang   lips   常用模块   pyc   

1.简述Python编程语言的编译过程。

当执行python代码时,在Python解释器用四个过程“拆解”我们的代码,最终被CPU执行返回给用户。首先当用户键入代码交给Python处理的时候会先进行词法分析,如代码中有关键字或者当输入关键字有误时,都会被词法分析所触发,不正确的代码将不会被执行。下一步Python会进行语法分析,遇到错误代码也不会执行。下面进入最关键的过程,在执行Python前,Python会生成.pyc文件,这个文件就是字节码。字节码Python虚拟机程序里对应的是PyCodeObject对象。.pyc文件是字节码在磁盘上的表现形式。简单来说就是在编译代码的过程中,首先会将代码中的函数、类等对象分类处理,然后生成字节码文件。有了字节码文件,CPU可以直接识别字节码文件进行处理,接着Python就可执行了.

2.py、pyc、pyo和pyd之间的区别.

py是所有Python脚本程序的后缀名,通过解释器直接运行*.py的文件
pyc是一种二进制文件,是由py文件经过解释器编译后,在磁盘上生成的文件形 式,是一种byte code,py文件变成pyc文件后,加载的速度有所提高,而且pyc是一种跨平台的字节码,是由python的解释器来执行的。pyc的内容是跟python的版本相关的,不同版本编译后的pyc文件是不同的。
pyo是优化编译后的程序,python -O -m源文件即可将源程序编译为pyo文件
pyd是python的动态链接库文件,由其他编程语言 "编写-编译" 生成的 Python 扩展模块.

3.Python在数据采集、科学计算、人工智能及web开发领域的常用模块名称。

数据采集 领域Requests模块库、 Urllib模块库、Re模块库 等
数学分析与科学计算领域NumPy模块库、SciPy模块库、Pandas模块库等
人工智能领域Scikit-learn模块库,Keras模块库等
web开发领域Secket模块库、Django模块库等

4.什么是VirtualEnv?它的作用是什么?

VirtualEnv是一种虚拟环境,作用是为了让多版本的Python共存。

5.python开发IDE都有哪些?对每种编译器进行简要说明。

1.默认自带的IDEL是Python软件包的集成开发环境,可以方便的创建,运行,和调试python程序
2.VSCode是微软官方推出的强大的语言编译器,被Python开发者广泛使用。
3.Sublime Text3是一个代码编译器,具有漂亮的用户界面和强大的功能。
4.PyCharm是一种Python IDE ,带有一整套可以帮助用户使用Python语言开发时提高其效率的工具。
5.PyDev是Eclipse for Python的一个重要插件,可以将Eclipse完全打造成专业的Python IDE。

6.如何理解pyCodeObject和pyFrameObject对象?

pyc字节码在Python虚拟机中对应的是PyCodeObject对象,虚拟机先把字节码封装成一个PyCodeObject对象后再一条条执行字节码指令。
当发生函数调用时,创建新的栈帧,对应Python的实现就是PyFrameObject对象

python学习之路01

标签:文件   词法分析   加载   动态链接库   url   djang   lips   常用模块   pyc   

原文地址:https://www.cnblogs.com/JameSLW-LEO/p/9543858.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!