1.重点知识

  • 了解 Python 语言的特点、发展史

  • 介绍 Python 语言广泛的应用领域和前景

2.Python 语言介绍

  • Python 语言的创始人是荷兰人吉多·范罗苏姆Guido van Rossum,也称龟叔。
  • 1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,作为ABC 语言的一种继承。之所以选中Python(大蟒蛇的意思)作为该编程语言的名字,是取自英国20世纪70年代首播的电视喜剧《蒙提.派森干的飞行马戏团》(Monty Python's Flying Circus)。

  • 他希望叫做 Python 的语言,能符合他的理想,创造一种介于 C 和 shell 之间,功能全面、易用易学、可拓展的语言。
  • 最新的 TIOBE 排行榜(截至 2019年6月9日),Python 赶超 C++ 跃居第3。
  • Python 崇尚优美、清晰、简单,它是一个优秀并广泛使用的语言。
  • 它广泛应用于众多领域,如:
    • 数据分析
    • 组件集成
    • 网络服务
    • 图像处理
    • 数值计算
    • 科学计算
  • 目前业内几乎所有大中型互联网企业都在使用 Python,如:
    • Google
    • Facebook
    • NASA
    • Youtube
    • Dropbox
    • Yahoo!
    • 百度
    • 腾讯
    • 汽车之家
    • 美团
    • 豆瓣
    • 知乎
    • 等等

2.1.Python 在主要领域的应用前景

  • Web 开发

    • 最火的 Web 框架 Django
    • 支持异步、高并发的 Tornado
    • 短小精悍的 flask 、bottle
  • 网络编程
    • 支持高并发的 Twisted 网络框架
    • Py3 引入的 asyncio 使异步编程变的非常简单
  • 爬虫,Python 几乎是霸主地位,众多的框架、库,想爬啥就爬啥
    • Scrapy
    • Request
    • Beautiful Soap
    • urllib
  • 云计算:目前最火、最知名的云计算框架就是 OpenStack,Python 的火爆,很大程度上要归功于云计算
  • 人工智能:谁会成为 AI 和大数据时代的第一开发语言?现在已经是一个不需要争论的问题。如果说三年前,Matlab、Scala、R、Java 和 Python 都各有机会、局面尚且不清晰,那么三年后的今天,趋势已经非常明确了,特别是 Facebook 开源了 PyTorch 后,Python 作为 AI 时代的头牌语言的地位已经确立,未来的悬念仅仅是谁能坐稳第2的位置。
  • 自动化运维:问问中国每个韵味人员必须会的语言是什么?相信他们会给你一个相同的答案:Python。
  • 金融分析:量化交易,金融分析,在金融工程领域,Python不但在用,且用的最多,而且重要性逐年提高。原因:作为动态语言的Python,语言结构清晰简单,库丰富,成熟稳定,科学计算和统计分析都很牛逼,生产效率远远高于c,c++,java,尤其擅长策略回测。
  • 科学计算:1997年开始,NASA 就在大量使用 Python 进行各种复杂的科学计算,随着 NumPy、SciPy、Matplotlib、Enthought librarys 等众多程序库的开发,使得Python 越来越适合于科学计算、绘制高质量的 2D、3D 图像。和科学计算领域最流行的商业软件 Matlab 相比,Python 是一门通用的程序设计语言,比 Matlab 所采用的脚本语言的应用范围更广泛。
  • 游戏开发:在网络游戏开发中 Python 也有很多应用。项目 Lua、C++,Python 比 Lua 具备更高姐的抽象能力,可以用更少的代码描述游戏业务逻辑,而且 Python 更适合作为一种 Host 语言,即程序的入口点在 Python 那一端会比较好,然后用 C、C++ 在必要的时候写一些扩展。Python 非常适合编写 1万行以上的项目,而且能够很好的把网络游戏项目控制在 10万行代码以内。知名的游戏"文明"就是用 Python 写的。

2.2.Python 在机构、行业巨头公司的应用

  • Google:Google App Engine、code.google.com、Google Earth、Google 爬虫、Google 广告等项目都在大量使用 Python。
  • CIA:美国中情局的网站就是用 Python 开发的。
  • NASA:美国航天局大量使用 Python 进行数据分析和运算。
  • Youtube:全球最大的视频网站也是用 Python 开发的。
  • Dropbox:美国最大的在线云存储网站全部用 Python 实现,网站每天处理 10亿个文件的上传和下载。
  • Instagram:美国最大的图片分享社交网站全部用 Python 开发,每天超过 3千万张照片被分享。
  • Facebook:大量的基础库均通过 Python 开发
  • Redhat:全球最流行的 Linux 发行版本中的 yum 包管理工具就是用 Python 开发的
  • 豆瓣:该公司的所有业务都是用 Python 开发的
  • 知乎:国内最大的问答社区也是用 Python 开发的
  • 春雨医生:国内知名的在线医疗网站也是用 Python 开发的
  • 除此之外,搜狐、金山、腾讯、盛大、网易、百度、阿里、淘宝、土豆、新浪、果壳等公司都在使用 Python 处理各种各样的事情

3.Python 的发展史

  • 1989年,龟叔开始写 Python 语言的编译器。
  • 1991年,第一个 Python 编译器诞生。它使用 C 语言实现的,并能够调用 C 语言的库文件。从一诞生,Python 就具有了累、函数、异常处理等功能,包含列表和字典在内的核心数据类型、以模块为基础的扩展系统。
  • 1994年1月,Python 1.0 增加了 lambda、map、filter、reduce。
  • 1999年,高度面向对象的 Web 开发框架 Zope 1 正式发布。
  • 2000年10月16日,Python 2.0 发布,加入了内存回收机制,构成了现在 Python 语言框架的基础。
  • 2004年11月30日,Python 2.4 发布。同年,最流行的 Web 框架 Django 诞生。
  • 2006年9月19日,Python 2.5 发布。
  • 2008年10月1日,Python 2.6 发布。
  • 2008年12月3日,Python 3.0 发布。
  • 2010年7月3日,Python 2.7 发布,兼容 2 和 3 的语法。
  • 2014年11月,发布声明 Pythn 2.7 维护到 2020年终止,并且不会再发布 2.8 版本,薪的特性都会追加在 3.4 以后的版本中。

题外话:为什么 2008年发布了 3.0 版本,2010年反而又发布了 2.7 版本?

这是因为 Python 3.0 版本不向下兼容 2.x 的语法,导致大家都拒绝升级 3.0,所以官方无奈只能通过发布 2.7版本来过渡。

4.Python 的发展前景如何

知乎上有篇文章《Python 未来 10年的发展前景》,可以看一下 Alex 的回答。

5.Python 有哪些种类

  • 我们现在知道 Python 是一门解释型语言,代码祥云县,必须通过解释器执行,Python 解释器本身也可以看作是一个程序,那么解释器是用什么语言开发的呢?答案是很多种语言。what?因为 Python 有很多种解释器,分别基于不同的语言开发,每个解释器特点不同,但是都能正常运行我们的 Python 代码,下面分别说明:

CPython

  • 官方版本解释器,使用 C 语言开发,在命令行下执行 python 就是启动 C Python 解释器。

IPython

  • 它是基于 CPython 的交互式解释器。也就是说在交互方式上有增强,但在执行 Python 代码的功能和 CPython 完全一样。
  • CPython 使用>>>作为提示符;IPython 使用ln[n]:作为提示符,n为序号。

PyPy

  • PyPy 特点是执行速度快,它采用 JIT 技术,对 Python 代码进行动态编译(注意不是解释),所以可以显著提高 Python 代码的执行速度。
  • 绝大部份 Python 代码都可以在 PyPy 下运行,但是 PyPy 和 CPython 有些不同,这导致了相同的 Python 代码在 2种解释器下执行,可能会得到不同的结果。
  • 所以,如果你的代码要用 PyPy 执行,就需要了解 PyPy 和 CPython 的不同。

Jython

  • 它是运行在 Java 平台下的 Python 解释器,可以直接把 Python 代码编译成 Java 字节码执行。

IronPython

  • IronPython 和 Jython 类似,只不过 IronPython 是运行在微软 .NET 平台上的 Python 解释器,可以直接把 Python 代码编译成 .NET 字节码。

6.选择:Python 2 还是 Python 3?

  • 业内很多企业还在大量使用 Python 2.6 或 2.7 版本,这是因为旧项目的几十万、甚至几百万行代码想快速升级到 3.0版本不是一件容易的事。

  • 目前虽然业内很多企业还在大量使用旧版本,但是大家在开发新项目时,几乎都会选择 Python 3版本。
  • 另外,Python 3 确实比 2.x 版本做了很多改进,打个比方,就好比 XP 升级到 Win10 的感觉一样,非常棒

    Python编程菜鸟成长记--A1--02--Python介绍的更多相关文章

    1. Python编程菜鸟成长记--A1--01--编程语言介绍

      目录 1.重点知识 2.什么是编程?为什么要编程? 3.有哪些编程语言? 3.1.机器语言 3.2.汇编语言 3.3.高级语言 3.3.1.编译型语言 3.3.2.解释型语言 3.4.小结 4.主流编 ...

    2. Python编程菜鸟成长记--A1--03--Python 环境安装(待完成)

      1.重点知识 Windows 上如何安装 Python 3 Linux 上如何安装 Python 3 Mac 上如何安装 Python 3 Windows 上如何安装 Pycharm Mac 上如何安 ...

    3. Python编程菜鸟成长记--A1--04--Hello World!

      1.重点知识 掌握使用 命令行.文件.Jupyter 的方式执行 Python 代码 2.Hello World! 自从 C 语言之父 丹尼斯.M.里奇 在<The C Programming ...

    4. 【系列】Python编程思想(1):Python简介与开发环境搭建

      李宁老师的 开始学习.   本系列文章深入介绍了Python的各种技术,堪称是目前最全的Python教程.主要目的是让读者可以了解Python的各种核心技术,包括各种Python函数库.本教程使用Py ...

    5. python笔记-python编程优化:常用原则和技术介绍

      本人翻译自<Exper Python Programming> 'Premature optimization is the root of all evil in programming ...

    6. Python编程笔记(第一篇)Python基础语法

      一.python介绍 1.编程语言排行榜 TIOBE榜 TIOBE编程语言排行榜是编程语言流行趋势的一个指标,每月更新,这份排行榜排名基于互联网有经验的程序员.课程和第三方厂商的数量. 2.pytho ...

    7. Python编程时.py与.pyc文件的介绍

      Python的程序中,是把原始程序代码放在.py文件里,而Python会在执行.py文件的时候.将.py形式的程序编译成中间式文件(byte-compiled)的.pyc文件,这么做的目的就是为了加快 ...

    8. Android菜鸟成长记14 -- AsnyTask

      本篇随笔将讲解一下Android的多线程的知识,以及如何通过AsyncTask机制来实现线程之间的通信. 一.Android当中的多线程 在Android当中,当一个应用程序的组件启动的时候,并且没有 ...

    9. Android菜鸟成长记11 -- sqlite数据库的设计和升降级

      Google为Andriod的较大的数据处理提供了SQLite,他在数据存储.管理.维护等各方面都相当出色,功能也非常的强大.SQLite具备下列特点: 1.轻量级 使用 SQLite 只需要带一个动 ...

    随机推荐

    1. CF 455A(Boredom-dp)

      A. Boredom time limit per test 1 second memory limit per test 256 megabytes input standard input out ...

    2. XF 列表视图分组列表填充

      using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threa ...

    3. Gradle离线配置

      原文:Gradle离线配置 1. 先在Gradle官网下载最新的离线zip压缩包. https://gradle.org/ 2. 将下载的zip压缩包,保存到本地磁盘下的目录中. 3. 修改(grad ...

    4. C#原子性运算 interlocked.compareExchanged

      缘起: 假设有一个类myClass, myclass里有一个count属性. 在多线程的环境下 每个线程中 直接使用count++,  如果两个线程并行执行时, 两个线程中的一个的结果会被覆掉, 非线 ...

    5. Windows程序设计画图实现哆啦A梦

      在看雪论坛上看到的一个帖子,很喜欢,转载一下.原文地址:http://bbs.pediy.com/showthread.php?t=138630哆啦A梦是画出来的,不知道作者算这些坐标位置算了多久,真 ...

    6. C# 委托参数方法实例

      /// <summary> /// 方法委托 /// </summary> /// <param name="dwEnrollNum">< ...

    7. 微信小程序把玩(四十一)canvas API

      原文:微信小程序把玩(四十一)canvas API 绘图是每个移动应用必备的技术,基本上和Android,IOS,等移动开发都是相同的,创建个上下文,给你个画布再上画,官网给的小例子都比较全了自己去看 ...

    8. phpstudy+phpstorm+debug

      文:phpstudy+phpstorm+debug 一.配置前说明: 1.phpStudy集成了XDebug扩展,所以不用单独下载XDebug. 2.打开XDebug扩展:其它选项菜单 > PH ...

    9. Docker笔记01-发布一个dotnetcore应用

      OS:Widows 10 IDE: VS2017 Docker:Docker Desktop for Windows Windows下安装Docker需要先启用Hyper-v 在Windows 容器的 ...

    10. einsum:爱因斯坦求和约定

      在Tensorflow.Numpy和PyTorch中都提供了使用einsum的api,einsum是一种能够简洁表示点积.外积.转置.矩阵-向量乘法.矩阵-矩阵乘法等运算的领域特定语言.在Tensor ...