Python来源介绍
python来源
1.1 Python来源
1989年的圣诞节,一位来自荷兰,名叫Guidio van Rossum的年轻帅小伙子,为了打发无趣的时光,决定改善他参与设计,不是很满意的ABC语言,随着研究的深入和功能的完善,其特性超越了ABC。在给这个新的脚本语言命名时,他想起了喜爱的Monty Pythoh喜剧团体,于是取名为:Python。 通过这个故事,终于知道咱们为什么发明不了一门编程语言了,对,那是因为我们无论在什么节假日,都没有无聊过,而且还丰富多彩。 历经两年后,也就是在1991年2月份时,Python终于面向大众,发布了第一个公开版本,其版本号为0.9.0。它使用C语言开发实现,支持类、函数、异常处理,还有列表、字典等数据结构。
(龟叔:2005年加入谷歌至2012年,2013年加入Dropbox直到现在,依然掌握着Python发展的核心方向,被称为仁慈的独裁者)。
随着更多程序员的加入,Python快马加鞭,在1994 年1月份发布了 Python 1.0;在2000年发布了Python 2.0;在2008 年 12 月时, 正式发布了Python 3.0,它也被称为 "Python 3000" 或 "Py3K。 随着这几年 Python 3 的使用率急剧上升,作为新手建议直接从 Python 3 学起。没必从Python2入手,毕竟Python3和Python2是不兼容的,还有Python官方公布,会在 2020 年 1 月 1 日起,停止对 Python 2 的更新和官方支持。 到这,你可能会问:Python怎么会获得那么多程序员的喜欢,它究竟有何特点?
1.2 有何特点
特点挺多的,咱只讲几处重点的。
(1) 简单易学
Python的语法就像在读英语一样,简单明了,一目了然,没有多余的边边角角,让你能够更专注于解决业务问题,而无须花费时间去研究语言本身。 它是面向对象的高级语言,具有封装、继承、多态等特点,也就意味着你不用考虑如何管理程序内存使用等诸类底层细节。
(2) 免费开源
Python 是 FLOSS(自由/开放源码软件)之一。简单地说,你可以自由地发布这个软件的拷贝、阅读它的源代码、甚至对它做任何改动,都不用花一分钱。 无论你是出于学习,还是开发商业软件,都不用担心授权问题。商业软件必然把客户绑定在产权上,无法自拔,而开源软件则可以让商业客户从这种折磨中解放出来。
(3) 跨平台
如果在某操作系统下开发的软件,也可在其他系统上运行,那是多么幸福的一件事呀,而Python就可以满足。 如果你不使用依赖于系统特性的代码,那么你的Python 程序无需任何修改就可以运行在Linux、Windows、FreeBSD、macOS、Solaris、OS/2、Amiga、AROS、BeOS、Palm OS、VxWorks、PlayStation等平台上。
(4) 丰富的库
Python拥有众多标准库和第3方库,你想要的各种领域的库几乎都能找得到,那意味着你可以不用重复发明轮子,从而提高工作效率,加快开发进度。 它有正则表达式、文档生成、单元测试、线程、数据库等标准库。也有网页浏览器、FTP、电子邮件、XML、密码系统、GUI(图形用户界面)、Tk 和其他与系统有关的操作。 还有许多其他高质量的第3方库,如用于桌面系统开发的wxPython,用于科学计算或数值计算的Numpy和Matplotlib等等。
(5) 解释性
Python是一门解释性语言,这意味着它不需要在运行前编译,在运行程序的时候才翻译,专门的解释器负责在每个语句执行的时候解释程序代码。 相对于编译型语言(如C++或Delphi),Python运行效率会低一些,可好在它的开发效率高,以空间换时间。 随着硬件的升级和设计思想的变革,编译型和解释型语言越来越笼统,而解释型语言的自身特点也使得编译器服务商愿意花费更多的时间和成本去优化解释器,解释型语言性能超过编译型语言是迟早问题。
1.3 应用领域
国外的Twitter、Google、Yahoo,Facebook,国内的豆瓣、果壳、春雨医生、知乎(Quora) 等知名企业都在使用Python,我们来看看它可应用在哪些领域里。
(1) 人工智能
各种人工智能算法、机器学习、神经网络、深度学习等大多基于Python编写,尤其在PyTorch推出后,更让其站在了AI时代的前端。 PyTorch有许多优势,如动态图机制、网络构建灵活以及拥有强大的社群等。由于其灵活、动态的编程环境和用户友好的界面,受到AI研究人员的推崇。
(2) 网络爬虫
在爬虫领域,Python开源库众多,一搜一大把,而且还简单易用。其中最为突出的要数Scrapy框架。 Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架,只需要实现少量代码,就能够快速的抓取到数据内容并进行分析和统计。
(3) Web应用
基于Python的Web开发框架比关键字还多,常见的有Django、Tornado、Flask、web.py、 Bottle等。 其中Django架构,应用范围最广,开发速度非常快,学习门槛也低,能够帮助你快速的搭建起可用的Web应用程序。
(4) 桌面软件
开发了那么多年的程序,经常说跨平台,跨平台,只是真正跨过的应用有几个?大多数Web应用,从一开始定下来平台后,后期很少更改的。 桌面系统就不同了,从一开始就希望它可以运行在多个平台上,提供给更多的人使用。Python在这方面也不含糊,提供了PyGTK、PySide、PyQT、WxPython等快速开发桌面统并可跨平台的框架。 其中使用WxPython的企业最多,而它也是Python创始人,Guidio大哥的最爱。
(5) 游戏开发
在网络游戏开发中,Python有很多应用,相比于C++或 Lua,Python有更高阶的抽象能力,可以用更少的代码描述游戏业务逻辑。 它非常适合编写1万行以上的项目,而且能够很好的把网游项目的规模控制在10万行代码以内。 其中Pygame游戏框架,封装了图形、动画、文字、音频等操作,方便使用,是众多游戏开发工程师的福音。
(6) 科学计算
在早期的时候,NASA和Google就大量使用Python进行各种复杂的科学运算,积累了丰富的科学运算库。 随着NumPy、SciPy、Matplotlib等众多程序库的开发,Python越来越适合做科学计算、绘制高质量的2D和3D图像。
(7) 云计算开发
如果了解过云计算相关的技术,应该知道目前很火的云计算框架OpenStack就是由Python开发的,如果使用它,就需要具备Python的相关技能。 几乎每家云计算服务商,都提供了Python应用的相关接口,使用它,可很快的进行集成开发。
(8) 金融分析
数据分析已经深入到各个行业中,尤其在金融领域的应用是最广阔的。了解并掌握了Python金融数据分析,对于今后就业相当有吸引力。 Python中的Numpy、Pandas、Scipy等数据分析模块,可以实现金融分析策略,如“双均线”、“周规则交易”、“羊驼策略”等。
ps:Python的来源在网上普遍说是大蟒蛇,真正来源是请看下文
Python 英[ˈpaɪθən]
世界的编程语言让人熟悉的有Java,C,C++,C#,PHP等等,还有最近几年的新语言比如GO语言,Python。
但其中的语言的名称是编写者随便拍脑门和大腿瞎想出来的,这篇文章里要讲的这Python就是如此。
Python 其实不是大蟒蛇,是个 BBC 电视剧
BBC是British Broadcasting Corporation的英文简称,是英国广播公司。
Python 的创始人吉多 · 范罗苏姆(Guido van Rossum)(就是上图的帅哥)。他在1982 年阿姆斯特丹大学获得了数学和计算机科学硕士双学位后,又在多家科研机构工作,他在 Google 工作了 7 年,从2005 至 2012 年。
之后又离职加入 Dropbox。这位帅哥在他 34 岁(1989 年)的圣诞节假期,就是这个美好的节日中设计出了风靡世界的程序语言 Python。虽然 Python 的英文原意是大蟒蛇,但创始人并不是想表明出这种语言要变成大蟒蛇来咬你,有关于 Python 的命名,吉多他自己(在 1996 年时)的说法是这样的:
Dropbox(多宝箱)成立于2007年,提供免费和收费服务,在不同操作系统下有客户端软件,并且有网页客户端,能够将存储在本地的文件自动同步到云端服务器保存
吉多作为一个略微有些奇怪想法的人和《蒙提 · 派森的飞行马戏团》的狂热爱好者。
下面是Python的名字来源和《蒙提 · 派森的飞行马戏团》的主要演员介绍
蒙提·派森(英语:Monty Python,也作The Pythons),又译为巨蟒剧团、蒙提巨蟒,是英国的一组超现实幽默表演团体。其创作的英国电视喜剧片《蒙提·派森的飞行马戏团》,于1969年10月5日在BBC上公开播出,共播出了4季计45集。发源于电视剧的派森剧团,其影响力在随后数十年里持续上升,产生了巡回舞台表演、电影、多部音乐专辑、几本书籍和一部舞台剧作品,其成员也踏上了独立的星途。派森剧团之于喜剧的影响力,不亚于[披头士乐队]对音乐的影响。
图中的是《蒙特派森与圣杯》 vs 波特酒
主要演员:
蒙提·派森六人组 饰演者 波特酒等
剧情简介:
在寻找葡萄酒“圣杯”的艰辛旅途上,波特酒和他的一票加强酒兄弟遇上了许多让人啼笑皆非的趣事。
猛然望去,波特酒貌似一点深度都没有,经不起推敲,然而,要是细细品尝的话,你就会发现这种加烈酒背后隐藏的秘密和无与伦比的潜力。不是所有的人都懂得波特酒,但是对于那些懂得他的人来说,波特酒就是人间天堂,沙漠绿洲——身临其境,你会不自觉地体会到其中的奥妙。法国佬,用不着吓唬我们兄弟几个!见鬼去吧,可怜人儿!不要在我们面前吹嘘你那所谓的波尔多荣耀啦,那些在我们这里,根本不值一提!
Python来源介绍的更多相关文章
- 从零开始学Python第0周:Python基本介绍(部分内容来源于网络)
Python入门介绍 一,Python的基本介绍 (1)概要 Python是一种解释型,面向对象,动态数据类型的高级程序设计语言.常被广泛用于处理系统管理任务和web编程.现如今Python已经成为了 ...
- 【转】Python Twisted介绍
Python Twisted介绍 作者:Jessica McKellar 原文链接 Twisted是用Python实现的基于事件驱动的网络引擎框架.Twisted诞生于2000年初,在当时的网络游戏开 ...
- 【美妙的Python之中的一个】Python简单介绍及环境搭建
美妙的Python之Python简单介绍及安装 简而言之: Python 是能你无限惊喜的语言,与众不同. 1.Python: ...
- python模块介绍- multi-mechanize 性能测试工具
python模块介绍- multi-mechanize 性能测试工具 2013-09-13 磁针石 #承接软件自动化实施与培训等gtalk:ouyangchongwu#gmail.comqq 3739 ...
- python模块介绍- xlwt 创建xls文件(excel)
python模块介绍- xlwt 创建xls文件(excel) 2013-06-24磁针石 #承接软件自动化实施与培训等gtalk:ouyangchongwu#gmail.comqq 37391319 ...
- python模块介绍- binascii 二进制和ASCII转换
python模块介绍-binascii二进制和ASCII转换 目录 项目简介 简介: Uu编码 Binhex编码 Base64编码 QP码 CRC校验和 二进制转换 其他实例 项目简介 Python中 ...
- python模块介绍- HTMLParser 简单的HTML和XHTML解析器
python模块介绍- HTMLParser 简单的HTML和XHTML解析器 2013-09-11 磁针石 #承接软件自动化实施与培训等gtalk:ouyangchongwu#gmail.comqq ...
- 利用Python进行数据分析——重要的Python库介绍
利用Python进行数据分析--重要的Python库介绍 一.NumPy 用于数组执行元素级计算及直接对数组执行数学运算 线性代数运算.傅里叶运算.随机数的生成 用于C/C++等代码的集成 二.pan ...
- Python lambda介绍
转自:http://www.cnblogs.com/evening/archive/2010/03/29/2423554.html Python lambda 介绍 在学习python的过程中,l ...
- Python入门介绍
Python入门介绍(人生苦短,我用 Python) Python简介 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹 ...
随机推荐
- JUC同步锁原理
JUC同步锁原理 1.锁的本质 1.什么是锁? 通俗来讲,锁要保证的就是原子性,就是一个代码块不允许多线程同时执行,就是锁.从生活的角度上来说,就比如你要去上厕所,当你在上厕所期间,你会把门锁上, ...
- Journal of Electronic Imaging投稿分享
Journal of Electronic Imaging投稿分享 在研究生阶段中的第一篇论文,前后总共三个月,还是很开心的!!! 附下中稿图片 这个期刊从二月份开始投的,然后三月份给了大修,大修时间 ...
- 手写RPC框架之泛化调用
一.背景 前段时间了解了泛化调用这个玩意儿,又想到自己之前写过一个RPC框架(参考<手写一个RPC框架>),于是便想小试牛刀. 二.泛化调用简介 什么是泛化调用 泛化调用就是在不依赖服务方 ...
- 开发中MongoDB遇到的各种问题
目录 一.安装6版本以下 二.安装6版本及以上 三.安装6版本以下(解压版) 四.配置本地 Windows MongoGB 服务 五.navicat 连接远程mongodb数据库 六.ip不一致问题 ...
- Jenkins自动化测试构建完成 发送钉钉消息
背景 有时自动化测试完成后,我们可以通过构建完成后给钉钉群发消息,这样就能及时通知到所有人员了. 接入流程 1:建立钉钉机器人,可以通过群助手,添加机器人,增加WebHook自定义接入,然后添加完成会 ...
- dash构建多页应用
dash 构建多页面应用一种方案 本方案对dash官网多页面案例使用dash_bootstrap_components案例进行优化与测试,效果如下 项目代码结构如下 │ app.py │ ├─asse ...
- Linux下手工编译libiconv库的小问题
我的电脑是 Ubuntu 14.04 LTS, 自己手工编译 php5.6, 打开 ZEND_EXTRA_LIBS='-liconv' 时, 发现没有安装 libiconv, 也就是编码转换的库, 所 ...
- 基于Avalonia 11.0.0+ReactiveUI 的跨平台项目开发2-功能开发
基于Avalonia 11.0.0+ReactiveUI 的跨平台项目开发2-功能开发 项目简介:目标是开发一个跨平台的AI聊天和其他功能的客户端平台.目的来学习和了解Avalonia.将这个项目部署 ...
- 2021-7-29 MySql进阶
Alter的使用: 列的增加和删减 alter table users add user_name VARCHAR(100);#添加一列在末尾 SELECT * from users; alter t ...
- Go的函数定义
格式: 1 func function_name( [parameter list] ) [return_types] { 2 函数体 3 } 注释: func:函数由 func 开始声明 funct ...