博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
从Hello World 谈Python运行原理
阅读量:4171 次
发布时间:2019-05-26

本文共 712 字,大约阅读时间需要 2 分钟。

        因公司需求,今天开始学习Python,对于python语言,早听行内朋友听过,简单说是面向对象的简单轻巧、解释性的脚本语言。 通过今天写hello world确实领教了Python的简洁。

 一、Hello world的python两种实现方法

      方法一、 打开Python的IDLE(Python GUI),在里面直接输入: 如下图所示

细心的朋友会看到,第一行输入print 'Hello' 时候会报错,这里要特别注意,这是python3版本的区别。 

     方法二、在D:\pythonWorkspace 下面创建文件hello.py,内容是print('Hello world'). 然后在命令窗口执行,如图:

可以看到用上面两种方法都可以实现hello world。

二、解释原理分析

  如果看过我写的关于编译器和解释器博文的朋友应该知道,python是一种解释性语言,它首先翻译成字节码,然后由python字节码虚拟机逐行解释。

PyCodeObject说明

PyCodeObject对象的创建时机是模块加载的时候,即import。Python test.py会对test.py进行编译成字节码并解释执行,但是不会生成test.pyc。如果test.py加载了其他模块,如import util,Python会对util.py进行编译成字节码,生成util.pyc,然后对字节码解释执行。如果想生成test.pyc,我们可以使用Python内置模块py_compile来编译。加载模块时,如果同时存在.py和.pyc,Python会尝试使用.pyc,如果.pyc的编译时间早于.py的修改时间,则重新编译.py并更新.pyc。

你可能感兴趣的文章
Comparator接口
查看>>
在二叉树中找到一个节点的后继节点
查看>>
寻找第K大
查看>>
String.trim
查看>>
缓存行 伪共享
查看>>
400 : perceived to be a client error 错误
查看>>
Establishing SSL connection without server's identity verification is not recommended
查看>>
扫描包不存在:pojo类找不到
查看>>
c语言中计算数组长度的方法
查看>>
java 数组定义
查看>>
java中的&和&&的区别
查看>>
Java的位运算符
查看>>
BufferedReader与Scanner的区别
查看>>
java String于常量池中的介绍
查看>>
java Text 错误: 找不到或无法加载主类 Text
查看>>
XShell连接ubantu:给ubantu安装ssh
查看>>
c语言的null和0
查看>>
二进制详解:世界上有10种人,一种懂二进制,一种不懂。
查看>>
c语言一个字符变量存储多个字符
查看>>
java接口中方法的默认访问修饰符为public
查看>>