#1 初识Python

前言

要说如今最时髦的编程语言是什么,那么必定是Python无疑了。让咱们来一块儿来领略其风采吧!编程

1、Python介绍

Python的创始人为吉多·范罗苏姆(Guido van Rossum),被你们称为“龟叔”,他在1989年圣诞节期间,为了在阿姆斯特丹打发时间,决定编写一门新的编程语言,做为ABC语言的继承。(看看人家,再看看本身,哎,不说了,心痛)服务器

若是你据说过TIOBE排行榜,那么你就能获得编程语言的大体流行程度,根据最新的TIOBE排行榜,Python赶超C++占据第三,仅次于Java和C,可见Python的流行程度。网络

2、Python擅长领域

 Python可应用于众多领域,最为擅长的有Web应用开发自动化运维网络爬虫数据分析科学计算人工智能,同时Python是一门胶水语言多线程

Web应用开发:架构

在大数据、人工智能为人所熟知以前,Python就已经在Web开发领域被普遍应用,产生了Flask、Django、Tornado等Web开发框架,众多大型网站均为Python开发:并发

  • YouTube框架

  • Quora运维

  • Reddit机器学习

  • Instagram编程语言

  • Facebook

  • Dropbox

  • Google

  • NASA

  • BT

  • 豆瓣

  • 知乎

固然Python不只应用于网站,不少APP和游戏的服务器也一样使用Python实现

自动化运维:

在自动化运维领域,Python是必需要掌握的技能,因其灵活的功能和丰富的类库使其成为运维工程师的首选语言。Linux系统内置Python,就足以见其在运维领域的地位。

网络爬虫:

网络爬虫多是萌新学习Python时最感兴趣的,爬虫能够将网站上的任何内容爬取下来,供本身分析使用。对于数据公司来讲,爬虫和反爬虫技术都是其赖以生存的重要保障,尽管不少语言均可以写爬虫,但Python绝对是首选,其灵活的爬取能力和丰富的类库,使得爬虫工程师工做起来的心应手。世界上最大的爬虫公司莫属Google了,Google一直在力推Python,就连Python创始人“龟叔”也在Google工做七年,可见Python的爬虫能力有多强。

数据分析:

使用爬虫爬取海量数据以后,就要对数据进行清洗、展现、分析、存储,这方面Python作的也是很棒的,拥有极其丰富的类库可供使用,让数据分析事半功倍。

科学计算:

要说科学计算,你们第一想到的恐怕就是Matlab了,的确,Matlab在科学计算领域有着不可取代的地位,可是Python的出现,可能要取代Matlab成为科学计算的领头羊。Python在科学计算方面拥有极为丰富的类库,这些类库在数学、物理、生物、地理、化学、建筑、武器等领域发挥着重要做用。NASA也早已把Python做为主要的开发语言,可见Python在科学计算领域的优点与i前途。

人工智能:

要说如今最火的方向是什么,绝对是AI没错了,AI最重要的无非不过机器学习、神经网络、深度学习等方面,而Python在数据挖掘、机器学习、神经网络、深度学习等方面都是主流的编程语言,如今Python无疑已成为AI领域的必修语言。

胶水语言:

对于Python萌新来讲,最担忧的可能就是Python会不会和我以前学过的语言有冲突,这一点无需担忧。Python简洁、灵活、通用,几乎能够和任何语言、设备、平台、场景链接,所以被称为胶水语言。

除了上面提到的领域之外,Python在其它领域也发挥着不可磨灭的做用,金融离不开Python、游戏离不开Python、桌面应用离不开Python,总之一句话归纳就是:

人生苦短,我用Python

3、Python缺点

Python有着上面众多优势,而且每个优势看起来都是那么的诱人,这也是Python流行的主要缘由。可是任何一门编程语言都有缺点,Python也不例外,Python的缺点主要有如下几个:

  • Python的运行速度慢:这是Python的主要缺点,和c相比很是慢,由于Python是解释型语言,代码在执行时会一行一行的翻译成机器码,这个过程很是耗时。但这并非一个很严重的问题,通常状况下,咱们不会那Python和C/C++去比较,由于用户根本感受不到这个时间,执行一个C/C++程序可能须要2.001秒,执行一个一样的Python程序须要2.1秒,用户能感受到2.001秒和2.1秒的区别吗?显然不能。若是Python的运行速度确实影响到了你,那么你能够将Python和C结合使用,将占用运行速度的那一块代码用C编写,以提升总体效率。

  • PythonGIL锁限制并发:Python的另外一个大问题就是对多处理器支持不太好。GIL(Global Interpreter Lock)指全局解释器锁,当Python的默认解释器要执行时,都须要先去申请这个锁,这意味着试图通多多线程扩展应用程序时,老是被这个锁限制。若是用户须要多并发,可使用多进程的架构来实现,也能够选择不一样的Python来实现多并发。

  • Python版本不兼容:几乎全部的软件更新迭代时,总会向后兼容,好比word2016能够打开word2013的文件,若是不能作到向后兼容的话,很大几率会被用户无情的抛弃。可是在Python中,一个很大的吐槽点就是Python3和Python2不能互相兼容,大量的Python工程师都为此头疼。萌新确定有这样的疑问,学习Python2仍是Python3,这里个人建议是学习Python3,Python2已经宣布只会维护到2020年,并且大量的类库已经不支持Python2了,同时官方建议学习Python3.

相关文章
相关标签/搜索