当前位置: 首页 > news >正文

『Python基础』第二节: Python简介及入门

一. Python介绍

        Python是一门高级计算机程序设计语言,1989年,荷兰的Guido von Rossum创造了它。Guido是是一个牛人,1982年,他从阿姆斯特丹大学获得了数学和计算机硕士学位,因此他可以算是一位数学家,不过他更享受使用计算机解决问题的感觉。Python只是由Guido的一次hacking产生的,1989年圣诞节假期,早就萌发了设计一门好用的高级语言的想法的Guido,放弃了休息,全身心的投入到了设计新语言的活动中去,结果产生了世界上少有的几门最优美、最易用、最简洁的高级程序设计语言之一——Python语言。

最新的TIOBE排行榜: Python继续在TIOBE指数中飙升

       本月Python再次达到TIOBE指数8.5%的历史新高。如果Python可以保持这种速度,它可能会在3到4年内取代C和Java,从而成为世界上最流行的编程语言。 Java的编程方式对初学者来说过于冗长。为了完全理解并运行一个简单的程序,例如Java中的“hello world”,你需要在C中这更容易一些,但是你会受到显式内存管理的影响。在Python中,这只需要一行。

       TIOBE编程社区索引是编程语言普及的一个指标。 索引每月更新一次。 评级基于全球技术工程师,课程和第三方供应商的数量。 流行的搜索引擎,如谷歌,必应,雅虎,维基百科,亚马逊,YouTube和百度,用于计算评级。 值得注意的是,TIOBE索引与最佳编程语言或编写大多数代码行的语言无关。

 

二. 目前Python的主要领域

1. WEB开发——最火的Python web框架Django, 支持异步高并发的Tornado框架,短小精悍的flask,bottle, Django官方的标语把Django定义为the framework for perfectionist with deadlines(大意是一个为完全主义者开发的高效率web框架)

2. 网络编程——支持高并发的Twisted网络框架, py3引入的asyncio使异步编程变的非常简单

3. 爬虫——爬虫领域,Python几乎是霸主地位,Scrapy\Request\BeautifuSoap\urllib等,想爬啥就爬啥

4. 云计算——目前最火最知名的云计算框架就是OpenStack,Python现在的火,很大一部分就是因为云计算

5. 人工智能——谁会成为AI 和大数据时代的第一开发语言?这本已是一个不需要争论的问题。如果说三年前,Matlab、Scala、R、Java 和 Python还各有机会,局面尚且不清楚,那么三年之后,趋势已经非常明确了,特别是前两天 Facebook 开源了 PyTorch 之后,Python 作为 AI 时代头牌语言的位置基本确立,未来的悬念仅仅是谁能坐稳第二把交椅。

6. 自动化运维——问问中国的每个运维人员,运维人员必须会的语言是什么?10个人相信会给你一个相同的答案,它的名字叫Python

7. 金融分析——我个人之前在金融行业,10年的时候,我们公司写的好多分析程序、高频交易软件就是用的Python,到目前,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 那一端会比较好,然后用 C/C++ 在非常必要的时候写一些扩展。Python 非常适合编写 1 万行以上的项目,而且能够很好地把网游项目的规模控制在 10 万行代码以内。另外据我所知,知名的游戏<文明> 就是用Python写的

三. Python在一些公司的应用

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

四. Python的发展史

       1989年,Guido开始写Python语言的编译器。

  1991年,第一个Python编译器诞生。它是用C语言实现的,并能够调用C语言的库文件。从一出生,Python已经具有了:类,函数,异常处理,包含表和词典在内的核心数据类型,以及模块为基础的拓展系统。

  Granddaddy of Python web frameworks, Zope 1 was released in 1999

  Python 1.0 - January 1994 增加了 lambda, map, filter and reduce.

  Python 2.0 - October 16, 2000,加入了内存回收机制,构成了现在Python语言框架的基础

  Python 2.4 - Nov. 30, 2004, 同年目前最流行的WEB框架Django 诞生

  Python 2.5 - Sept. 19, 2006

  Python 2.6 - Oct. 2, 2008

  Python 2.7 - July 3, 2010

  Python 3.0 - December 3, 2008 (这里要解释清楚 为什么08年就出3.0,2010年反而又推出了2.7?是因为3.0不向下兼容2.0,导致大家都拒绝升级3.0,无奈官方只能推出2.7过渡版本)

  Python 3.1 - June 26, 2009

  Python 3.2 - Feb. 20, 2011

  Python 3.3 - Sept. 29, 2012

  Python 3.4 - March 17, 2014

       2014年11月,宣布Python 2.7将在2020年之前得到支持,并重申将不会发布2.8版本

  Python 3.5 - Sept. 13, 2015

  Python 3.6 - Dec. 23, 2016

       Python 3.7 - June 27, 2018

五. Python的种类

Cpython

Ipython

PyPy

Jpython

IronPython

转载于:https://www.cnblogs.com/BlameKidd/p/11074502.html

相关文章:

  • 统一ID服务
  • 小小c#算法题 - 5 - 插入排序
  • 线程启动 [转]
  • PSP Skype 使用国内卡
  • php.ini 中文版[转]
  • 使用StyleCop进行代码审查
  • wcf服务代理层添加wcf服务异步代理
  • 检测是否支持position:fixed
  • [译]学习IPython进行交互式计算和数据可视化(三)
  • 【PSY】 [歌詞] 父親
  • 一步一步学Remoting之三:复杂对象
  • linux下查看磁盘空间
  • Greenplum table 之 appendonly的列存储表
  • 云计算实验(二)Hadoop 练习
  • 云计算实验(三)CloudSim练习
  • 【402天】跃迁之路——程序员高效学习方法论探索系列(实验阶段159-2018.03.14)...
  • C++类中的特殊成员函数
  • Centos6.8 使用rpm安装mysql5.7
  • JavaScript 无符号位移运算符 三个大于号 的使用方法
  • js ES6 求数组的交集,并集,还有差集
  • Map集合、散列表、红黑树介绍
  • Python - 闭包Closure
  • REST架构的思考
  • Spring-boot 启动时碰到的错误
  • Vue.js源码(2):初探List Rendering
  • 阿里云容器服务区块链解决方案全新升级 支持Hyperledger Fabric v1.1
  • 开放才能进步!Angular和Wijmo一起走过的日子
  • 什么软件可以剪辑音乐?
  • 使用Envoy 作Sidecar Proxy的微服务模式-4.Prometheus的指标收集
  • 树莓派 - 使用须知
  • 学习使用ExpressJS 4.0中的新Router
  • 做一名精致的JavaScripter 01:JavaScript简介
  • 格斗健身潮牌24KiCK获近千万Pre-A轮融资,用户留存高达9个月 ...
  • 基于django的视频点播网站开发-step3-注册登录功能 ...
  • ​Kaggle X光肺炎检测比赛第二名方案解析 | CVPR 2020 Workshop
  • ​人工智能书单(数学基础篇)
  • ​软考-高级-信息系统项目管理师教程 第四版【第19章-配置与变更管理-思维导图】​
  • #LLM入门|Prompt#2.3_对查询任务进行分类|意图分析_Classification
  • #微信小程序(布局、渲染层基础知识)
  • #我与Java虚拟机的故事#连载19:等我技术变强了,我会去看你的 ​
  • $.each()与$(selector).each()
  • (2)(2.4) TerraRanger Tower/Tower EVO(360度)
  • (27)4.8 习题课
  • (ZT)一个美国文科博士的YardLife
  • (笔试题)合法字符串
  • (编译到47%失败)to be deleted
  • (二)什么是Vite——Vite 和 Webpack 区别(冷启动)
  • (附源码)计算机毕业设计SSM疫情下的学生出入管理系统
  • (转)树状数组
  • (轉貼) UML中文FAQ (OO) (UML)
  • ***监测系统的构建(chkrootkit )
  • .NET CORE Aws S3 使用
  • .NET Core中的去虚
  • .NET I/O 学习笔记:对文件和目录进行解压缩操作
  • .NET Remoting学习笔记(三)信道