Python是纯粹的
自由软件,
源代码和
解释器CPython遵循
GPL(
GNU General Public License)协议[2]
。Python语法简洁清晰,特点之一是强制用空白符(white space)做为语句缩进。
Python具备丰富和强大的库。它常被昵称为
胶水语言,可以把用其余语言制做的各类模块(尤为是
C/
C++)很轻松地联结在一块儿。常见的一种应用情形是,使用Python快速生成程序的原型(有时甚至是程序的最终界面),而后对其中[3]
有特别要求的部分,用更合适的语言改写,好比
3D游戏中的图形渲染模块,性能要求特别高,就能够用C/C++重写,然后封装为Python能够调用的扩展类库。须要注意的是在您使用扩展类库时可能须要考虑平台问题,某些可能不提供
跨平台的实现。
7月20日,IEEE发布2017年编程语言排行榜:Python高居首位[4]
。
自从20世纪90年代初Python语言诞生至今,它已被逐渐普遍应用于系统管理任务的处理和
Web编程。
Python的创始人为Guido van Rossum。1989年圣诞节期间,在
阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,作为ABC 语言的一种继承。之因此选中Python(大蟒蛇的意思)做为该编程语言的名字,是由于他是一个叫Monty Python的喜剧团体的
爱好者。ABC是由Guido参加设计的一种
教学语言。就Guido本人看来,ABC 这种语言很是优美和强大,是专门为非专业程序员设计的。可是ABC语言并无成功,究其缘由,Guido 认为是其非开
标识
放形成的。Guido 决心在Python 中避免这一错误。同时,他还想实如今ABC 中闪现过但不曾实现的东西。
就这样,Python在Guido手中诞生了。能够说,Python是从ABC发展起来,主要受到了Modula-3(另外一种至关优美且强大的语言,为小型团体所设计的)的影响。而且结合了
Unix shell和C的习惯。
Python[5]
已经成为最受欢迎的程序设计语言之一。2011年1月,它被
TIOBE编程语言排行榜评为2010年度语言。自从2004年之后,python的使用率呈线性增加[6]
因为Python语言的
简洁性、易读性以及可扩展性,在国外用Python作科学计算的研究机构日益增多,一些知名大学已经采用Python来教授程序设计
课程。例如
卡耐基梅隆大学的编程基础、麻省理工学院的计算机科学及编程导论就使用Python语言讲授。众多开源的科学计算软件包都提供了Python的调用
接口,例如著名的计算机视觉库
OpenCV、三维可视化库VTK、医学图像处理库ITK。而Python专用的科学计算扩展库就更多了,例如以下3个十分经典的科学计算扩展库:NumPy、SciPy和matplotlib,它们分别为Python提供了快速数组处理、数值运算以及绘图功能。所以Python语言及其众多的扩展库所构成的开发环境十分适合
工程技术、科研人员处理实验数据、制做图表,甚至开发科学计算
应用程序。
提及科学计算,首先会被提到的多是
MATLAB。然而除了MATLAB的一些专业性很强的工具箱还没法替代以外,MATLAB的大部分经常使用功能均可以在Python世界中找到相应的扩展库。和MATLAB相比,用Python作科学计算有以下优势:
● 首先,MATLAB是一款商用软件,而且价格不菲。而Python彻底免费,众多开源的
科学计算库都提供了Python的调用接口。用户能够在任何计算机上免费安装Python及其绝大多数扩展库。
● 其次,与MATLAB相比,Python是一门更易学、更严谨的程序设计语言。它能让用户编写出更易读、易维护的代码。
● 最后,MATLAB主要专一于工程和科学计算。然而即便在计算领域,也常常会遇到文件管理、
界面设计、
网络通讯等各类需求。而Python有着丰富的扩展库,能够轻易完成各类高级任务,开发者能够用Python实现完整应用程序所需的各
R是统计领域普遍使用的诞生于1980年左右的
S语言的一个分支。能够认为R是S语言的一种实现。而S语言是由AT&T贝尔实验室开发的一种用来进行数据探索、统计分析和做图的
解释型语言。最初S语言的实现版本主要是
S-PLUS。S-PLUS是一个
商业软件,它基于S语言,并由MathSoft公司的统计科学部进一步完善。后来新西兰奥克兰大学的Robert Gentleman和Ross Ihaka及其余志愿人员开发了一个R系统。由“R开发核心团队”负责开发。R能够看做贝尔实验室(AT&T BellLaboratories)的RickBecker,JohnChambers和AllanWilks开发的S语言的一种实现。固然,S语言也是S-Plus的基础。因此,二者在程序语法上能够说是几乎同样的,可能只是在函数方面有细微差异,程序十分容易地就能移植到一程序中,而不少一的程序只要稍加修改也能运用于R。
R做为一种统计分析软件,是集统计分析与图形显示于一体的。它能够运行于UNIX,Windows和Macintosh的操做系统上,并且嵌入了一个很是方便实用的帮助系统,相比于其余统计分析软件,R还有如下特色:
1.R是自由软件。这意味着它是彻底免费,开放源代码的。能够在它的网站及其镜像中下载任何有关的安装程序、源代码、程序包及其源代码、文档资料。标准的安装文件身自身就带有许多模块和内嵌统计函数,安装好后能够直接实现许多经常使用的统计功能。[2]
2.R是一种可编程的语言。做为一个开放的统计编程环境,语法通俗易懂,很容易学会和掌握语言的语法。并且学会以后,咱们能够编制本身的函数来扩展示有的语言。这也就是为何它的更新速度比通常统计软件,如,SPSS,SAS等快得多。大多数最新的统计方法和技术均可以在R中直接获得。[2]
3. 全部R的函数和数据集是保存在程序包里面的。只有当一个包被载入时,它的内容才能够被访问。一些经常使用、基本的程序包已经被收入了标准安装文件中,随着新的统计分析方法的出现,标准安装文件中所包含的程序包也随着版本的更新而不断变化。在另外版安装文件中,已经包含的程序包有:base一R的基础模块、mle一极大似然估计模块、ts一时间序列分析模块、mva一多元统计分析模块、survival一辈子存分析模块等等.[2]
4.R具备很强的互动性。除了图形输出是在另外的窗口处,它的输入输出窗口都是在同一个窗口进行的,输入语法中若是出现错误会立刻在窗口口中获得提示,对之前输入过的命令有记忆功能,能够随时再现、编辑修改以知足用户的须要。输出的图形能够直接保存为JPG,BMP,PNG等图片格式,还能够直接保存为PDF文件。另外,和其余编程语言和数据库之间有很好的接口。[2]
5.若是加入R的帮助邮件列表一,天天均可能会收到几十份关于R的邮件资讯。能够和全球一流的统计计算方面的专家讨论各类问题,能够说是全世界最大、最前沿的统计学家思惟的汇集地.[2]
R是基于S语言的一个GNU项目,因此也能够看成S语言的一种实现,一般用S语言编写的代码均可以不做修改的在R环境下运行。 R的语法是来自Scheme。R的使用与S-PLUS有不少相似之处,这两种语言有必定的兼容性。S-PLUS的使用手册,只要稍加修改就可做为R的使用手册。因此有人说:R,是S-PLUS的一个“克隆”。
可是请不要忘了:R是免费的(R is free)。R语言源代码托管在github,具体地址能够看参考资料。[3]
。
R语言的下载能够经过CRAN的镜像来查找。
R语言有域名为.cn的下载地址,有六个,其中两个由Datagurn,由
中国科学技术大学提供的。R语言Windows版,其中由两个下载地点是Datagurn和
USTC提供的。