博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python全栈(一)编程语言介绍
阅读量:5222 次
发布时间:2019-06-14

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

一、编程语言介绍

程序是计算机能读懂的语言,是人和计算机沟通的方式。

计算机无法理解符号,只能理解0,1的二进制。

计算机内的运行状态就像灯泡的开关一样来表示各庄状态,两个灯泡能表示4种状态,无数的灯泡就能表示无数种状态,实质上是半导体的导通和截止构成的大规模集成电路形成了计算机。

 

1.如何编程

我们对不同的对象下命令,需要使用不同的方式,例如:对中国人说好好干活,对外国人说Do your work!。

对于计算机来说,只能使用0,1的机器码和它交流,让计算机完成相应的工作,这种方式让人难以理解,最早的程序员就是通过打孔纸带这种方式编程的。

我们期望的是用人类更容易理解的语言和计算机进行交互,但由于计算机只能识别机器指令,即0101的二进制串,因此必须有自然语言到机器语言转换的过程。

例如我们需要打开一个MP3,并播放

对应的机器指令可能是: 01011111  01010011 01010010

而我们期待的是这样的指令:

>>open "hello.mp3"

>>start play

 

2.计算机语言分类

我们重新回顾下计算机语言的分类:

a.机器语言   由机器指令构成,难以理解,但计算机可以直接执行

b.汇编语言   将机器指令改为英文,本质还是机器指令,开发效率低,难以理解

c. 高级语言   接近人类自然语言的计算机语言,易理解和编写,但需要转换程序将其转换为二进制的机器指令

高级语言按转换二进制方式的不同,分为编译型语言和解释型语言,编译型语言是一次性全文翻译的方式,将高级语言转换为二进制指令,解释型语言采用边执行边翻译的方式进行转换,所以编译型语言将时间花在了编译过程上,解释型

语言将时间花在了执行过程中。

 

编译型语言:

a.不易修改,修改需要重新编译

b.跨平台性差,不同平台依赖不同编译器

c.运行速度快,执行过程无需编译器参与

 

解释型语言:

a.可跨平台,但运行依赖解释器

b.已修改,开发效率高

c.边解释边运行的方式导致运行速度较慢

 

但是目前由于计算机硬件性能的提升,解释型语言的运行速度和编译型语言在大多数情况下运行速度差距已经难以察觉

 

二、Python介绍及发展史

Python的诞生  1989年圣诞节  发明人龟叔  Guido  Python名称取自他喜欢的一部电视剧

1991年正式开放使用

1994年 Python 1.0发布

1999年 出现第一个Web框架 Zope

2000年 Python 2.0

2004年 Python 2.4    Django诞生

2005年 Guido加入谷歌

2008年 Python2.6     Ptyhon  3.0发布

2010年 Python 2 3 过渡版本 Python 2.7 发布,宣布 Python 2.7将支持至 2020年

 

三、Python解释器种类

CPython 官方推荐解释器,最早的Python解释器

IPython  CPython加壳,金融分析常用

PyPy Python实现的Python解释器, 运行速度快,Python的未来

IronPython .Net实现的Python解释器

JPython Java实现的Python解释器

 

四、学习版本的选择

Python3才是未来

 

五、Python的安装和Hello World的执行方式

1. Windows下需要安装, Mac、Linux下无需安装

2. 多个版本的安装: 修改可执行文件名称

3. 执行方式

a. 交互式解释器, 主要用于调试

b. Python   hello.py   永久保存

Python文件的.py扩展名不是必须的,只是用来区分文件类型

 

转载于:https://www.cnblogs.com/songkunhuang/p/8513074.html

你可能感兴趣的文章
hdu4888 Redraw Beautiful Drawings(最大流)
查看>>
Java——一个类的加载过程
查看>>
objective-c 取消执行的延迟函数
查看>>
python——装饰器例子一个
查看>>
获取 metadata 的完整例子 - 每天5分钟玩转 OpenStack(166)
查看>>
C#注册表操作类(完整版)
查看>>
ArcGIS Server GP服务使用常见错误总结
查看>>
Jzoj3883 线段树
查看>>
微信小程序_(组件)picker
查看>>
OpenCV图片拼接的两种方法
查看>>
基于eBox旋转编码器
查看>>
异常、架构、框架、序列化、接口
查看>>
[Linux发行版] 常见Linux系统下载(转)
查看>>
[Angular] N things you might don't know about Angular Route
查看>>
[HTML5] Using the tabindex attribute for keyboard accessibility
查看>>
【Git】本地分支
查看>>
锁机制
查看>>
cf519D. A and B and Interesting Substrings(前缀和)
查看>>
.net framework
查看>>
一致性哈希算法(consistent hashing)(转)
查看>>