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怎么会获得那么多程序员的喜欢,它究竟有何特点?
特点挺多的,咱只讲几处重点的。
Python的语法就像在读英语一样,简单明了,一目了然,没有多余的边边角角,让你能够更专注于解决业务问题,而无须花费时间去研究语言本身。 它是面向对象的高级语言,具有封装、继承、多态等特点,也就意味着你不用考虑如何管理程序内存使用等诸类底层细节。
Python 是 FLOSS(自由/开放源码软件)之一。简单地说,你可以自由地发布这个软件的拷贝、阅读它的源代码、甚至对它做任何改动,都不用花一分钱。 无论你是出于学习,还是开发商业软件,都不用担心授权问题。商业软件必然把客户绑定在产权上,无法自拔,而开源软件则可以让商业客户从这种折磨中解放出来。
如果在某操作系统下开发的软件,也可在其他系统上运行,那是多么幸福的一件事呀,而Python就可以满足。 如果你不使用依赖于系统特性的代码,那么你的Python 程序无需任何修改就可以运行在Linux、Windows、FreeBSD、macOS、Solaris、OS/2、Amiga、AROS、BeOS、Palm OS、VxWorks、PlayStation等平台上。
Python拥有众多标准库和第3方库,你想要的各种领域的库几乎都能找得到,那意味着你可以不用重复发明轮子,从而提高工作效率,加快开发进度。 它有正则表达式、文档生成、单元测试、线程、数据库等标准库。也有网页浏览器、FTP、电子邮件、XML、密码系统、GUI(图形用户界面)、Tk 和其他与系统有关的操作。 还有许多其他高质量的第3方库,如用于桌面系统开发的wxPython,用于科学计算或数值计算的Numpy和Matplotlib等等。
Python是一门解释性语言,这意味着它不需要在运行前编译,在运行程序的时候才翻译,专门的解释器负责在每个语句执行的时候解释程序代码。 相对于编译型语言(如C++或Delphi),Python运行效率会低一些,可好在它的开发效率高,以空间换时间。 随着硬件的升级和设计思想的变革,编译型和解释型语言越来越笼统,而解释型语言的自身特点也使得编译器服务商愿意花费更多的时间和成本去优化解释器,解释型语言性能超过编译型语言是迟早问题。
国外的Twitter、Google、Yahoo,Facebook,国内的豆瓣、果壳、春雨医生、知乎(Quora) 等知名企业都在使用Python,我们来看看它可应用在哪些领域里。
各种人工智能算法、机器学习、神经网络、深度学习等大多基于Python编写,尤其在PyTorch推出后,更让其站在了AI时代的前端。 PyTorch有许多优势,如动态图机制、网络构建灵活以及拥有强大的社群等。由于其灵活、动态的编程环境和用户友好的界面,受到AI研究人员的推崇。
在爬虫领域,Python开源库众多,一搜一大把,而且还简单易用。其中最为突出的要数Scrapy框架。 Scrapy是一个为了爬取网站数据,提取结构性数据而编写的应用框架,只需要实现少量代码,就能够快速的抓取到数据内容并进行分析和统计。
基于Python的Web开发框架比关键字还多,常见的有Django、Tornado、Flask、web.py、 Bottle等。 其中Django架构,应用范围最广,开发速度非常快,学习门槛也低,能够帮助你快速的搭建起可用的Web应用程序。
开发了那么多年的程序,经常说跨平台,跨平台,只是真正跨过的应用有几个?大多数Web应用,从一开始定下来平台后,后期很少更改的。 桌面系统就不同了,从一开始就希望它可以运行在多个平台上,提供给更多的人使用。Python在这方面也不含糊,提供了PyGTK、PySide、PyQT、WxPython等快速开发桌面统并可跨平台的框架。 其中使用WxPython的企业最多,而它也是Python创始人,Guidio大哥的最爱。
在网络游戏开发中,Python有很多应用,相比于C++或 Lua,Python有更高阶的抽象能力,可以用更少的代码描述游戏业务逻辑。 它非常适合编写1万行以上的项目,而且能够很好的把网游项目的规模控制在10万行代码以内。 其中Pygame游戏框架,封装了图形、动画、文字、音频等操作,方便使用,是众多游戏开发工程师的福音。
在早期的时候,NASA和Google就大量使用Python进行各种复杂的科学运算,积累了丰富的科学运算库。 随着NumPy、SciPy、Matplotlib等众多程序库的开发,Python越来越适合做科学计算、绘制高质量的2D和3D图像。
如果了解过云计算相关的技术,应该知道目前很火的云计算框架OpenStack就是由Python开发的,如果使用它,就需要具备Python的相关技能。 几乎每家云计算服务商,都提供了Python应用的相关接口,使用它,可很快的进行集成开发。
数据分析已经深入到各个行业中,尤其在金融领域的应用是最广阔的。了解并掌握了Python金融数据分析,对于今后就业相当有吸引力。 Python中的Numpy、Pandas、Scipy等数据分析模块,可以实现金融分析策略,如“双均线”、“周规则交易”、“羊驼策略”等。
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年,提供免费和收费服务,在不同操作系统下有客户端软件,并且有网页客户端,能够将存储在本地的文件自动同步到云端服务器保存
吉多作为一个略微有些奇怪想法的人和《蒙提 · 派森的飞行马戏团》的狂热爱好者。
蒙提·派森(英语:Monty Python,也作The Pythons),又译为巨蟒剧团、蒙提巨蟒,是英国的一组超现实幽默表演团体。其创作的英国电视喜剧片《蒙提·派森的飞行马戏团》,于1969年10月5日在BBC上公开播出,共播出了4季计45集。发源于电视剧的派森剧团,其影响力在随后数十年里持续上升,产生了巡回舞台表演、电影、多部音乐专辑、几本书籍和一部舞台剧作品,其成员也踏上了独立的星途。派森剧团之于喜剧的影响力,不亚于[披头士乐队]对音乐的影响。
图中的是《蒙特派森与圣杯》 vs 波特酒
主要演员:
蒙提·派森六人组 饰演者 波特酒等
剧情简介:
在寻找葡萄酒“圣杯”的艰辛旅途上,波特酒和他的一票加强酒兄弟遇上了许多让人啼笑皆非的趣事。
猛然望去,波特酒貌似一点深度都没有,经不起推敲,然而,要是细细品尝的话,你就会发现这种加烈酒背后隐藏的秘密和无与伦比的潜力。不是所有的人都懂得波特酒,但是对于那些懂得他的人来说,波特酒就是人间天堂,沙漠绿洲——身临其境,你会不自觉地体会到其中的奥妙。法国佬,用不着吓唬我们兄弟几个!见鬼去吧,可怜人儿!不要在我们面前吹嘘你那所谓的波尔多荣耀啦,那些在我们这里,根本不值一提!