一、编程语言介绍

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

计算机无法理解符号,只能理解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扩展名不是必须的,只是用来区分文件类型

Python全栈(一)编程语言介绍的更多相关文章

  1. Python全栈开发【模块】

    Python全栈开发[模块] 本节内容: 模块介绍 time random os sys json & picle shelve XML hashlib ConfigParser loggin ...

  2. python全栈开发 什么是python python命名及循环

    python全栈 一.  python介绍: 1.    python起源 2.    主要应用领域; web,人工智能,云计算,系统运维. 1.1   python是一门什么语言? python是一 ...

  3. 老男孩Python全栈第2期+课件笔记【高清完整92天整套视频教程】

    点击了解更多Python课程>>> 老男孩Python全栈第2期+课件笔记[高清完整92天整套视频教程] 课程目录 ├─day01-python 全栈开发-基础篇 │ 01 pyth ...

  4. Python全栈开发【面向对象进阶】

    Python全栈开发[面向对象进阶] 本节内容: isinstance(obj,cls)和issubclass(sub,super) 反射 __setattr__,__delattr__,__geta ...

  5. Python全栈开发【面向对象】

    Python全栈开发[面向对象] 本节内容: 三大编程范式 面向对象设计与面向对象编程 类和对象 静态属性.类方法.静态方法 类组合 继承 多态 封装 三大编程范式 三大编程范式: 1.面向过程编程 ...

  6. python 全栈开发之路 day1

    python 全栈开发之路 day1   本节内容 计算机发展介绍 计算机硬件组成 计算机基本原理 计算机 计算机(computer)俗称电脑,是一种用于高速计算的电子计算机器,可以进行数值计算,又可 ...

  7. Python全栈开发

    Python全栈开发 一文让你彻底明白Python装饰器原理,从此面试工作再也不怕了. 一.装饰器 装饰器可以使函数执行前和执行后分别执行其他的附加功能,这种在代码运行期间动态增加功能的方式,称之为“ ...

  8. 老男孩Python全栈开发(92天全)视频教程 自学笔记02

    day2课程目录: 操作系统的历史 二进制运算 字符编码与计算机容量 编程语言介绍 开发语言分类 演讲能力锻炼 day2课程内容梳理: 操作系统发展史: Unix系统 极其稳定 现在很多银行还在用 L ...

  9. 战争热诚的python全栈开发之路

    从学习python开始,一直是自己摸索,但是时间不等人啊,所以自己为了节省时间,决定报个班系统学习,下面整理的文章都是自己学习后,认为重要的需要弄懂的知识点,做出链接,一方面是为了自己找的话方便,一方 ...

  10. Win10构建Python全栈开发环境With WSL

    目录 Win10构建Python全栈开发环境With WSL 启动WSL 总结 对<Dev on Windows with WSL>的补充 Win10构建Python全栈开发环境With ...

随机推荐

  1. 虚拟内存映射 段分割 vm_area_struct

    http://www.cnblogs.com/huxiao-tee/p/4660352.html linux内核使用vm_area_struct结构来表示一个独立的虚拟内存区域,由于每个不同质的虚拟内 ...

  2. 广搜最短路(最短时间到达目的地),POJ(3669)

    题目链接:http://poj.org/problem?id=3669 解题报告: 1.流星坠落的点,四周和自己本身都被毁灭,不断更新每个点被毁灭的时候的最短时间. 2.搜索终点是,到达某个点,这个不 ...

  3. Oracle数据库几种启动方式及查询当前状态

    Oracle数据库几种启动方式 1.startup nomount: 非安装启动,这种方式下启动可执行:重建控制文件.重建数据库,读取init.ora文件,启动instance,即启动SGA和后台进程 ...

  4. 怎样在 Ubuntu Linux 上安装 MySQL

    本教程教你如何在基于 Ubuntu 的 Linux 发行版上安装 MySQL.对于首次使用的用户,你将会学习到如何验证你的安装和第一次怎样去连接 MySQL. -- Sergiu MySQL 是一个典 ...

  5. Matlab 绘图实例

    概要   每次用 Matlab 绘图都要搜一堆资料设置一些参数,本次将绘图中的一些参数设置实例展示在这里,以备不时之需.暂包括折线图,面积图.   折线图实例   下图是效果图: 图 1:折线图效果图 ...

  6. ILSVRC2014检测总结

    ILSVRC 2014结束一段时间了.从下面的表格来看,基本都是RCNN的路子,但是这些牛队都做了改进.自己和人家比差的太远啊,努力. team results Spotlights and impr ...

  7. js中的变量提升(Hoisting)

    <script> function test(){ console.log(a); console.log(foo()); var a=1; function foo(){ return ...

  8. HTTP请求与服务器响应流程

    1. HTTP 简介 1.1定义 1.2 请求/响应报文格式 1.3请求方式--GET/POST     状态码 1.4 响应状态 2. HTTP请求,浏览器做了什么, 服务端处理解析过程 1:HTT ...

  9. 3.Netty的粘包、拆包(二)

    Netty提供的TCP数据拆包.粘包解决方案 1.前言 关于TCP的数据拆包.粘包的介绍,我在上一篇文章里面已经有过介绍. 想要了解一下的,请点击这里 Chick Here! 今天我们要讲解的是Net ...

  10. CocoaAsyncSocket使用

    代理的.h文件 #import <Foundation/Foundation.h> #import "GCDAsyncSocket.h" typedef void(^S ...