Python 基础知识

Python 基础知识

1、Python 简单介绍

  • Python 创始人:吉多·范罗苏姆(Guido Van Rossum)。1989年的圣诞节期间,吉多·范罗苏姆为打发时间,决心开发一个新的脚本解释程序,做为ABC语言的一种继承。Python这个名字,来自Guido所挚爱的电视剧Monty Python's Flying Circus。他但愿这个叫作python的语言,能符合他的理想:建立一种C和Shell之间,功能全面,易学易用,可拓展的语言。

  

  • Python 能够应用于众多领域。如:数据分析、组件集成、网络服务、图像处理、数值计算和科学计算等众多领域。目前业内几乎全部大中型互联网企业都在使用Python。如:YouTuBe、Dropbox、BT、Quoa(中国知乎)、豆瓣、知乎、Google、Yahoo!、Facebook、NASA、百度、腾讯、汽车之家、美团等。

2、Python 目前的主要领域

  1. WEB开发 - 最火的Python Web框架Django,支持异步高并发的Tornado框架,短小精悍的Flask、Bottle、Django官方的标语把Django定义为The Framwork For Perfectionist With Deadlines(一个为彻底主义者开发的高效率web框架)。
  2. 网络编程 - 支持高并发的Twisted网络框架,Python3引入的asyncio使异步编程变得很是简单。
  3. 爬虫 - 爬虫领域,Python几乎是霸主地位,Scrapy、Request、BeautifuSoap、Urllib等,想爬啥就爬啥。
  4. 云计算 - 目前最火最知名的云计算框架就是OpenStack。Python如今的火,很大一部分就是由于云计算。
  5. 人工智能 - 谁会成为AI和大数据时代的第一个开发语言?这本已经是一个不须要争论的问题,若是三年前Matlab、Scala、R、Java 和Python还各有机会,局面尚且不清楚,那么三年以后,趋势已很是明确了,特别是FaceBook开源了PyTorch以后,Python做为AI时代头牌语言的位置基本确立了。
  6. 自动化运维 - 全世界全部运维人员,运维人员必须会的语言是什么?有90%必定会给你一个相同的答案,那就是Python。
  7. 金融分析 - Python是金融分析、量化交易领域里用得最多的语言。
  8. 科学运算 - 97年开始,NASA就在大量的使用Python进行各类复杂的科学计算,随着Numpy、Scipy、Matplotlib、Enthought librarys等众多程序库的开发,使用Python愈来愈适合作科学计算、绘制高质量的2D和3D图像。和科学计算领域最流行的商业软件Matlab相比,Python是一门通用的程序设计语言,比Matlab所采用的脚本语言的应用范围更普遍。
  9. 游戏开发 - 在网络游戏开发中Python也有不少应用。相比Lua Or C++,Python 比Lua有更高阶的抽象能力,能够用更少的代码描述游戏业务逻辑,与Lua相比,Python更适合作一种Host语言。知名的游戏《文明》就是用Python写的。

3、Python 公司的应用

  • 谷歌:Google App Engine、code.Google.com、Google eath、谷歌爬虫、Google广告等项目都在大量使用Python开发
  • CIA:美国中情局网站就是用Python开发的
  • NASA:美国航天局(NASA)大量使用Python进行数据分析和运算
  • YouTube:世界上最大的视频网站YouTube就是用Python开发的
  • FaceBook:大量的基础库均是经过Python实现的
  • RedHat:世界上最流行的Linux发现版本中yum包管理工具就是用Python开发的
  • 豆瓣:公司几乎全部的业务均是经过Python开发的
  • 知乎:国内最大的问答社区,经过Python开发(国外Quora)
  • 除上面以外,还有搜狐、金山、腾讯、盛大、网易、百度、阿里、淘宝、土豆、新浪、果壳等公司都在使用Python完成各类各样的任务

4、Python 发展历史

  • 1989年,Guido开始写Python语言编译器。
  • 1991年,第一个Python编译器诞生。它是用C语言实现的,而且可以调用C语言的库文件。从一出生,Python就具备了:类、函数、异常处理、包含表和词典在内的核心数据类型。以及模块为基础的拓展系统。
  • 1999年,Granddaddy Of Python Web Frameworks,Zope 1 was released in 1999
  • 1994年,Python 1.0 - January 增长了Lambda、Map、Filter and reduce.
  • 2000年,Python 2.0 - October 16,2000,加入了内存回收机制,构成了如今Python语言框架的基础
  • 2004年,Python 2.4 - November 30,2004,同年目前最流行的Web框架Django诞生了
  • 2006年,Python 2.5 - September 19,2006
  • 2008年,Python 2.6 - October 1,2008
  • 2010年,Python 2.7 - July 3,2010
  • 2014年,In November 2014, it was announced that Python 2.7 would be supported until 2020, and reaffirmed that there would be no 2.8 release as users were expected to move to Python 3.4+ as soon as possible(2014年11月,Python2.7宣布将支持到2020年,并重申不会有2.8版本,所以用户将搬到Python 3.4+版本)  
  • 2008年,Python 3.0 - December 3,2008
  • 2009年,Python 3.1 - June 27,2009
  • 2011年,Python 3.2 - February 20,2011
  • 2012年,Python 3.3 - September 29,2012
  • 2014年,Python 3.4 - March 16,2014
  • 2015年, Python 3.5 - September 13,2015
  • 2015年, Python 3.5.1 - documentation released on 07 December 2015
  • 2016年,Python 3.5.2 - documentation released on 27 June 2016
  • 2016年, Python 3.6.0 - documentation released on 23 December 2016
  • 2017年,Python 3.6.1 - documentation released on 21 March 2017

    官方文档说明:https://www.python.org/doc/versions/python

5、Python 什么样的语言

  编程语言中从如下几个角度进行分类:编译型和解释下、静态语言和动态语言、 强类型语言和弱类型语言web

    • 编译型:C、C++、Go、Swift、Object-c、Pascal
    • 解释型:JavaScript、Python、Ruby、PHP、Perl、Erlang
    • 混合型:JAVA、C#

  从上边得出Python是解释型语言,那么咱们来看下解释型语言的优缺点:编程

    • 优势:良好的平台兼容性,在任何环节中均可以运行(前提安装了解释器[虚拟机])。代码可直接修改,快速部署,不用停机维护(python)
    • 缺点:每次运行的时候都要解释一遍,性能上不如编译型语言

6、Python 解释器种类

  Python是一门语言,用这门语言写出来的代码,须要由Python的解释器去执行。解释器的分类以下:网络

  • Cpython(最经常使用版本)

   用C语言开发的,使用最广。实现方法:将源文件(py文件)转换成字节码文件(pyc文件),而后运行在Python虚拟机上。并发

  • Jpython

   用Java语言开发的,Jpython会将Python代码动态编译成Java字节码,而后在JVM上运行框架

  • IronPython

   用C#语言开发的,IronPython将Python代码编译成C#字节码,而后在CLR上运行(与Jpython相似)运维

  • PyPy(特殊)

   Python实现的Python,将Python的字节码在编译成机器码异步

相关文章
相关标签/搜索