Python的创始人为吉多*范罗苏姆(Gudio van Rossum)

1.1989年的圣诞节期间,吉多*范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的解释程序,作为ABC语言的一种继承。

2.ABC是由吉多参加设计的一种教学语言,就吉多本人看来,ABC这种语言非常优美和强大,是专门为非专业程序员设计的。但是ABC语言并没有成功,

究其原因,吉多认为是非开发造成的。吉多决心在Python中避免这一错误,并获取了非常好的效果。

3.之所以选中Python(蟒蛇)作为程序的名字,是因为他是BBC电视剧--蒙提*派森的飞行马戏团(Monty Python’s Flying Circus)的爱好者。

4.1991年,第一个Python解释器诞生,它是用C语言实现的,并能够调用C语言的库文件。

1.Python的设计目标

1999年,吉多*范罗苏姆向DARPA提交了一条名为”Computer Programming For Everybody”的资金申请,并在后来说明了他对Python的目标:

  1.一门简单直观的语言并与主要竞争者一样强大

  2.开源,以便任何人都可以为它做贡献   

  3.代码像纯英语那样容易理解

  4.适用于短期开发的日常任务

这些想法中的基本都已经成为现实,Python已经成为一门流行的编程语言

2.Python的设计哲学

1. Python开发者的哲学是:用一种方法,最好是只有一种方法来做一件事

2.如果面临多种选择,Python开发者一般会拒绝花俏的语法,而选择明确没有或很少有歧义的语法

在Python社区,吉多被称为“仁慈的独裁者” 

3.为什么使用Python

同一样问题,用不同的语言解决,代码量差距还是很多的,一般情况下Python是Java的1/5,所以说人生苦短,我用Python。

 来自TIOBE官网 https://www.tiobe.com/tiobe-index/

4.Python的特点

4.1 Python是完全面向对象的语言

  函数、模块、数字、字符串都是对象,在 Python中一切皆对象

  完全支持继承、重载、多重继承

  支持重载运算符,也支持泛型设计

4.2 Python拥有一个强大的标准库,Python语言的核心只包含数字、字符串、列表、字典、文件等常见类型和函数,而由Python标准库提供了系统管理、网络通信、

文本处理、数据库接口、图形系统、XML处理等额外的功能

4.3 Python社区提供了大量的第三方模块,使用方式与标准库类似。它们的功能覆盖科学计算、人工智能、机器学习、Web开发、数据库接口、图形系统多个领域

5.Python的优缺点

5.1 优点

  简单、易学

  免费、开源

  面向对象

  丰富的库

  可扩展性

PS:如果需要一段关键代码运行得更快或者希望某些算法不公开,可以把这 部分程序用C或C++编写,然后在Python程序中使用它们

5.2 缺点

  运行速度

  国内市场较小

  中文资料匮乏

6.Python的2.X与3.X

目前市场上有两个 Python的版本并存着,分别是Python2.x和Python3.x

新的Python程序建议使用Python 3.0版本的语法

 

6.1 Python 2.x是过去的版本

解释器名称是python

6.2 Python 3.x是现在和未来主流的版本

解释器名称是python3

相对于 Python的早期版本,这是一个较大的升级

为了不带入过多的累赘,Python 3.0在设计的时候没有考虑向下兼容

许多早期Python版本设计的程序都无法在Python 3.0上正常执行

Python 3.0发布于2008年

到目前为止,Python 3.0的稳定版本已经有很多年了

  • Python 3.3 发布于2012
  • Python 3.4 发布于2014
  • Python 3.5 发布于2015
  • Python 3.6 发布于2016

6.3 为了照顾现有的程序,官方提供了一个过渡版本 - - Python2.6

 

基本使用了Python 2.x 的语法和库

同时考虑了向Python 3.0的迁移,允许使用部分Python 3.0的语法与函数

2010年中推出的Python 2.7被确定为最后一个Python 2.x版本

 

PS:如果开发时,无法立即使用Python 3.0(还有极少的第三方库不支持3.0的语法),建议:

 1.先使用Python 3.0版本进行开发

 2.然后使用Python 2.6、Python 2.7来执行,并且做一些兼容性的处理

最新文章

  1. php 安装pdo_mysql 扩展
  2. Request/Server模式
  3. 【nodejs】json value出现 undefined 将会无法解析 问题来了
  4. vs2013运行c语言出现:无法查找或打开 PDB 文件。
  5. action中list传到JSP中取不到值的问题
  6. 学习smail注入遇到的坑
  7. juery悬浮框
  8. 回顾2017系列篇(一):最佳的11篇UI/UX设计文章
  9. eclipse JVM 性能调优
  10. [Linux]出错处理errno
  11. CSAPP深入理解计算机系统(第二版)第三章家庭作业答案
  12. 实现简易Promise
  13. Python_复习_34
  14. python3 + selenium 之窗口切换
  15. 算法笔记_223:打印回型嵌套(Java)
  16. [LeetCode&Python] Problem 766. Toeplitz Matrix
  17. ECharts 定制 label 样式
  18. 2006 - MySQL server has gone away
  19. XMU 1246
  20. css3 animation动画使用

热门文章

  1. html学习笔记:基本结构,排列清单,表格
  2. 菜鸟学习Spring——SpringMVC注解版前台向后台传值的两种方式
  3. 【Mood-15】DailyBuild 1月
  4. qt 创建线程
  5. 注入类型(Injection Type)
  6. [C# 网络编程系列]专题八:P2P编程
  7. Linux --Mysql基础命令
  8. 查询python的安装路径
  9. windows10 、eclipse kepler配置maven环境
  10. ANT 的Table表格样式修改方法