python科学计算与数据处理第0章

上传人:简****9 文档编号:100677845 上传时间:2019-09-24 格式:PPT 页数:54 大小:806KB
返回 下载 相关 举报
python科学计算与数据处理第0章_第1页
第1页 / 共54页
python科学计算与数据处理第0章_第2页
第2页 / 共54页
python科学计算与数据处理第0章_第3页
第3页 / 共54页
python科学计算与数据处理第0章_第4页
第4页 / 共54页
python科学计算与数据处理第0章_第5页
第5页 / 共54页
点击查看更多>>
资源描述

《python科学计算与数据处理第0章》由会员分享,可在线阅读,更多相关《python科学计算与数据处理第0章(54页珍藏版)》请在金锄头文库上搜索。

1、Python科学计算与数据处理,中国科学院大学 数学科学学院,2,本节目录,课程介绍 Python简介 Python简史 Python的特征 Python的应用 python 科学计算软件的选择,3,课程介绍,Python科学计算与数据处理,4,课程介绍,通过课程的学习掌握用python进行科学计算与数据处理的方法。 课程内容 python 简介与python 科学计算软件的选择。 python 基础。 NumPy-快速处理数据。 SciPy-数值计算。 Sympy-符号运算。 Matplotlib-绘制图表。 Pandas-数据分析。,5,参考资料,Python程序设计语言 Python编程

2、实践。 python核心编程中文版(第二版)。 Python学习手册(第4版)。 Python科学计算与数据处理 Python数据分析基础教程:NumPy学习指南 Python科学计算。 利用Python进行数据分析。 OReilly Python for Finance, Analyze Big Financial Data (2015),6,课程考核及方式,成绩的组成(暂定) 平时作业(40%)+读参考资料报告(60%) 参考资料报告 与Python科学计算与数据处理相关的、课堂上未讲授的内容。 评判报告方式 报告同学互判,同学给的平均成绩占报告总分的80%。,Python简介,7,Pyt

3、hon科学计算与数据处理,8,Python简史,什么是Python? Python英语单词是蟒蛇的意思。 Python语言是少有的一种可以称得上既简单又功能强大的编程语言。 你将惊喜地发现Python语言是多么地简单,它注重的是如何解决问题而不是编程语言的语法和结构。,Python简史,Python是一种简单易学,功能强大的编程语言,它有高效率的高层数据结构,简单而有效地实现面向对象编程。 Python简洁的语法和对动态输入的支持,再加上解释性语言的本质,使得它在大多数平台上的许多领域都是一个 理想的脚本语言,特 别适用于快速的应用 程序开发。,9,Python简史,Python的作者,吉多范

4、罗苏姆(Guido von Rossum),荷兰人。1982年,Guido从阿姆斯特丹大学获得了数学和计算机硕士学位。然而,尽管他算得上是一位数学家,但他更加享受计算机带来的乐趣。 用他的话说,尽管拥 有数学和计算机双料 资质,他总趋向于做 计算机相关的工作, 并热衷于做任何和编 程相关的活儿。,10,Python简史,Python语言诞生的时间是在1989年。在阿姆斯特丹,guido在圣诞节家中正为ABC语言编写一个插件。ABC是由荷兰的数学和计算机研究所开发的,专为方便数学家、物理学家使用。Guido 在该研究所工 作,并参与到 ABC语言的开 发。,11,Python简史,Guido希望

5、有一种语言能够像C语言那样,全面调用计算机的功能接口,同时又可以轻松的编程。ABC语言让Guido看到希望。ABC语言以教学为目的。ABC语言的目标是“让用户感觉更好”,希望让语言变得容易阅读,容易使用,容易记忆,容易学习,并以此来激发人们学习编程的兴趣。 在这个圣诞节假期,Guido开发的这个插件实际实现了一个个脚本语言,且功能强大。 Guido 以自己的名义发布了这门语言,且命名其为Python。,12,Python简史,Python英语单词的由来是因为Guido von Rossum是天空马戏团忠实的fans,用一个大蟒蛇飞行马戏团的名字中的一个单词“Python”作为这门新语言的名字。

6、,13,Python简史,Python的发展可经历几个重要的阶段: CNRI时期:CNRI是资助Python发展初期的重要资助重要单位,Python1.5版前的主要成果大部分在此时期完成。 BeOpen时期:Guido von Rossum与BeOpen公司合作,Python1.6与Python2.0基本上同时推出,但原则上已经分别维护。Python2.0的许多功能与Python1.6不同。,14,Python简史,DC时期:Guido离开BeOpen公司,将开发团队带到Digital Creations(DC)公司,该公司以发展Zope系统闻名,由于Guido的加入,因此这个项目也颇受关注。

7、 Python3.0:Python2.x和Python3.x差异挺大、前后不兼容,虽然有2to3的工具可以转,但不能解决所有的问题。Python3.x尚未完全普及开来,很多第三方的库都没用官方支持Python3.x。考虑到前后版本的这个不兼容性,这会让一些人对采用Python开发项目产生顾忌。,15,Python简史,里程碑 Python由于在2010年获得较大市场份额的增长(1.81%,增长 速度最快的)获年度 Tiobe编程语言大奖。,16,Python简史,17,Python简史,18,Python的特征,Python语言的定位 脚本语言(Scripting language) 高阶动态

8、编程语言,19,Python的特征,简单易学 简结:不用结束符 可读性强:每一级缩进都是4个空格 上手快:会其他语言的上手更快 Python上手容易,易学,读它的代码就像是在读文章。稍微有点逻辑思维的人只要看几分钟就能知道是什么意思。 从0开始学习编程的话,Python是一个不错的开始。,20,Python的特征,解释性&编辑性 Python语言写的程序不需要编译成二进制代码。你可以直接从源代码运行程序。在计算机内部,Python解释器把源代码转换成称为字节码的中间形式,然后再把它翻译成计算机使用的机器语言并运行。 Python中也有编译执行的特性。 高级语言 使用Python语言编写程序,无

9、需考虑诸如管理内存一类的底层。,21,Python的特征,面向对象 Python即支持面向过程的编程也支持面向对象的编程。在 面向过程的语言中,程序是由过程或仅仅是可重用代码的函数构建起来的。在面向对象的语言中,程序是由数据和功能组合而成的对象构建起来的。与其他主要的语言如C+和Java相比,Python以一种非常强大又简单的方式实现面向对象 编程。,22,Python的特征,可扩展性与可嵌入性 如果你需要你的一段关键代码运行得更快或者希望某些算法不公开,你可以把你的部分程序用C或C+编写,然后在你的Python程序中使用它们。与此相反,可以把Python嵌入C/C+程序,提供脚本功能。 免费

10、、开源 可自由地发布这个软件的拷贝、阅读它的源代码、对它进行改动、把它的一部分用到新的自由软件中。,23,Python的特征,可移植性 由于它开源的本质,Python已被移植到许多平台上。如果能避免使用依赖系统的特性,那么所有的Python程序无需修改就可在任何平台上面运行。包括Linux ,window,Macintosh等等。 胶水语言,24,Python的特征,丰富的库 丰富的库似乎已变成判断一种编程语言是否强大的重要标准。Python拥有一个强大的标准库。Python语言的核心只包含数字、字符串、列表、字典、文件等常见类型和函数,而由Python标准库提供了系统管理、网络通信、文本处理

11、、科学计算、数据库接口、图形系统、XML处理等额外的功能。除了标准库以外,还有许多其他高质量的库,如wxPython、Twisted和Python图像库等等。,25,Python的特征,Python和其他语言的比较 比TCL强大,支持“大规模编程”,适宜于开发大型系统 比Perl语法简洁,更具可读性、更易于维护,有助于减少Bug 比Java更简单、更易于使用 比C+更简单、更易于使用,不与之竞争 比VB更强大也更具备跨平台特性 比Ruby更成熟、语法更具可读性,2009-8-10,Python程序设计语言,26,Python的特征,Python的语法特点 Python是一种语法表达极其优美的脚

12、本语言 运行方式 命令行、交互式、图形集成环境 面向对象 甚至还支持异常处理 模块和包 与Java类似,还开发了Jpython 语言扩展 可以用C/C+/Java编写新的语言模块 丰富的库 数据分析/系统管理/web/GUI/ ,27,Python的特征,Python的缺点 运行速度不够快。 Python程序运行的效率不如Java或者C代码高,但是我们可以使用Python调用C编译的代码。 开发速度与运行速度之间的矛盾 至今还没有一门编程语言,开发速度比Python快,运行速度比C快。,28,Python的应用,Python是用标准C语言写成的一种面向对象的脚本语言,语法相对简单,符合人的思维

13、习惯,通过集成环境或解释器直接执行源程序。它可以运行在windows、linux等操作系统平台上,具有丰富的功能库以处理各种工作。 在编程领域的应用也日渐广泛,可以用于系统编程、图形处理、科学计算、文本处理、数据库编程、网络编程、多媒体编程等方面。也被一些公司应用于产品开发上。,29,Python的应用,30,实现Web爬虫和搜索引擎中的许多组件。,使用它(包括其它技术)管理讨论组。,Python的应用,31,完成科学计算任务。在它的几个系统中既用了Python开发,又将其作为脚本语言.,视频分享服务大部分是由Python编写的.,Python的应用,32,Python是豆瓣 的主要开发语言

14、Python与 Ruby比较: Ruby用的人太少了。至少 Python在当时中国有真正的使用者。从技术管理的角度来看,没有用Java已经有些不切实际了,用Ruby就太过理想主义了。 还有一个问题是库。Python有大量现成的库,而且很多库都经过大型商业应用。 Python更简洁。 Ruby 是小日本创建的!不能保证其技术支持性! Python 是世界的!,Python科学计算发行版的比较,Python环境的搭建 http:/www.python.org/download/ python2.7.x同python3.x比较改了不少地方。 一个在线的python运行环境,可在这里练习,无需下载安装

15、配置。左边页面是写代码的地方,点击左上角的“Execute Sctipt”,就可以在右边页面看到输出结果。,33,Python科学计算发行版的比较,Python是一门优秀的程序语言,其还拥有出色的数据处理能力,尤其是在数据量巨大的时候,因而也吸引了不少数据分析人员的关注和使用。 一般的Python数据分析并不直接在Python shell中运行代码,而是选择了IPython,IPython 是一个 python 的交互式 shell,比传统的Python shell 好用,支持变量自动补全,自动缩进,支持 bash shell 命令,内置了许多很有用的功能和函数。,34,Python科学计算发

16、行版的比较,Python的数据处理能力主要依赖于NumPy,SciPy,Matplotlib,Pandas这4个库,其中NumPy提供了矩阵运算的功能,SciPy则在NumPy的基础上添加了许多科学计算的函数库,而这两个库就使Python具有和Matlab一样的数据处理能力了。Matplotlib库提供了绘图,可以实现数据的可视化,pandas是基于NumPy的一种工具,该库提供了高效地操作大型数据集所需的工具。而这四个库都需要我们进行单独安装,Python自身并不具备这些库。,35,Python科学计算发行版的比较,Ipython及各种科学计算库的安装及升级更新较为麻烦和复杂,幸好有大神将科学计算所需要的模块以及IPython打包供用户使用。,36,Python科学计算发行版的比较,Python(x,y) GUI基于PyQt,曾经是功能最全也是最强大的,而且是Windows系统中科学免费Python发行版的不二选择.不过今时已不同往昔! Python(x,y)里面的许多科学计算包部分有兼容性的问题,无法使用最新的程序包。,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 管理学资料

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号