Python程序设计语言绪论

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

明确Explicit简单Simple优雅Beautiful大学计算机基础(Python语言)第1讲绪论计算机基础教研室赵钱孙李计算机被称为是一种万能的机器(theuniversalmachine),它能够在程序的控制下存储和处理信息,而且这个程序是可变(changeable)的。为了使计算机能够理解人类的意图,人类就必须将待解决问题的思路、方法和手段通过计算机能够理解的形式告诉计算机,使得计算机能够根据人的指令一步一步去工作,从而完成某种特定的任务。这种人和计算机之间交流的媒介就是程序设计语言。TIOBE编程语言社区排行榜:Python排名第四(2018.05)明确Explicit简单Simple优雅Beautiful置换两个变量三元表达式b=a2?1:-1九九乘法表Table='\n'.join([''.join('%d×%d=%2d'%(x,y,x*y)forxinrange(1,y+1))foryinrange(1,10)])TheZenofPythonPython之禅this模块凯撒加密:每个字符往前移动13位Python语言的明确、简单、优雅正是为了帮助程序设计人员追求代码的正确性(明确),简洁性(简单)和可读性(优雅)。Python的禅道翻译作品内容忠实于原文谓“信”,文辞畅达谓“达”,有文采谓“雅”。译事三难:信、达、雅。严复第01讲绪论程序设计程序设计是给出解决特定问题程序的过程,是软件构造活动中的重要组成部分。程序设计往往以某种程序设计语言为工具,给出这种语言下的程序。1结构化程序设计2程序设计基础2程序设计语言3程序设计方法4源码执行方式1结构化程序设计2程序设计基础2程序设计语言3程序设计方法4源码执行方式2.1结构化程序设计E.W.Dijikstra自顶向下、逐步求精及模块化的程序设计方法顺序、选择、循环三种基本控制结构构造程序软件发展的里程碑2.1结构化程序设计2.1.1控制结构顺序选择循环只有一个入口、一个出口结构内每一部分都有机会被执行到结构内不存在“死循环”素数判断1966年Bohm与Jacopini证明:任何单入口、单出口的“没有死循环”的程序都能由顺序、选择、循环三种最基本的控制结构构造出来。2.1结构化程序设计2.1.2设计方法自顶向下逐步求精模块化限制使用goto语句结构化程序设计是一种进行程序设计的原则和方法结构化程序特点是:结构清晰、易阅读、易修改、易验证程序结构化的主要功能是:使得正确性证明容易实现,允许在设计过程中的每一步验证其正确性2程序设计语言2程序设计基础1结构化程序设计3程序设计方法4源码执行方式2.2程序设计语言程序设计语言程序设计语言是一种用于书写计算机程序的语言。语言的基础是一组记号和一组规则。根据规则由记号构成的记号串的总体就是语言。在程序设计语言中,这些记号串就是程序。2.2程序设计语言段落描写文章句子短语词汇基本符号语言的基本体系结构常量、变量、保留字、运算符等函数类、包程序语句表达式程序设计语言的基本体系结构基本符号计算机语言的体系结构与语言的体系结构完全一致,只是每一个层次的内容要简单得多。程序设计语言是人机交互的一种表达方法,是使用计算机的一种工具。程序设计语言是建立计算机精确处理模型与人类智能处理模型之间的某种形式化的桥梁。机器语言汇编语言高级语言2.2程序设计语言程序设计语言2.2程序设计语言机器语言00100011111011010110000101110110高级语言main(){inta,b,c;a=300;b=18;c=a+b;printf(“c=%d\n”,c);}汇编语言MOVAX,300HADDBX,AXMOV[2100H],BXHLT指令对应机器基本动作占用内存少、执行效率高通用性低、移植性差使用助记符号代替指令代码简短、易于识记开发效率低、周期长接近于人类自然语言简单直观、通用性强交互性好,易于调试执行效率低,目标代码大3程序设计方法2程序设计基础2程序设计语言4源码执行方式1结构化程序设计2.3程序设计方法一种以过程为中心,自顶向下、逐步求精的结构化开发方法。程序结构按照功能划分为若干个基本模块,形成一个树状(网状)结构模块之间关系相对简单,在功能上相对独立模块内部一般都是由顺序、选择和循环3种基本结构组成面向过程设计方法开始游戏一方走[黑先]绘棋盘切换玩家直到一方赢结束游戏基于面向过程的设计思路面向过程设计方法2.3程序设计方法2.3程序设计方法面向对象设计方法把状态(数据)和行为(功能)捆绑在一起,形成对象。当遇到一个具体问题时,只需将一个系统分解成一个个对象,同时将状态和行为封装在对象中。面向对象设计方法抽象:对一组有相同属性和相同方法对象的定义封装:隐藏类内部实现机制,仅暴露类外部接口继承:子类自动共享父类之间属性和方法的机制多态:一个对象有着多重属性和不同方法的机制2.3程序设计方法面向对象设计方法玩家对象:黑白双方,两方行为相同棋盘对象:负责绘制棋局裁判对象:判定犯规、输赢等行为掷子重绘初始犯规输赢悔棋棋盘玩家黑玩家白裁判悔棋掷子2程序设计基础2程序设计语言3程序设计方法4源码执行方式1结构化程序设计2.4源码执行方式高级语言所编写的源代码最终都要以某种方式转换成能被计算机识别的0,1序列机器码,方可被计算机接受并执行。编译执行解释执行2.4源码执行方式源代码经过编译器编译处理,生成目标机器码,就是机器能直接运行的二进制代码,下次运行时无需重新编译。它不具备可移植性,但是执行速度快。C、C++这类语言属于编译型语言。编译执行2.4源码执行方式解释执行是在代码运行期间逐行翻译成目标机器码,下次执行时,还是需要逐行解释。可以简单认为Java、Python都是解释型语言。解释执行2.4源码执行方式编译执行时检查词法、语法代码优化、生成可执行文件等需要花费时间,编译后的机器码具有平台相关性,运行速度快。解释执行翻译一条执行一条,不生成目标程序,浪费计算机资源,效率低,但是不依赖于平台。编译型与解释型各有优缺点又相互对立,所以一些语言把两者折衷结合起来,形成了一种半编译、半解释的执行方式。半编译半解释执行UnixJVMUnix2.4源码执行方式Java源代码.javaSolarisJVMLinuxJVMMacOSxJVMWinodwsSolarisLinuxMacOSx字节码.classWinodwsJVM解释并运行Java编译器一个平台上编译多个平台上运行不同平台上安装对应JVMJava半编译半解释执行方式Python与Java执行方式类似。不同在于Python的编译通常发生在对某个模块的调用过程中。模块编译成字节码可以节省加载时间,以达到提高效率的目的。第01讲绪论2017年5月,Python首次超越C#跃居第四TIOBE编程语言社区排行榜1Python的特点3Python语言概况2Python的应用3Python的实现4Python源码的执行5Python程序的运行模式6Python版本的选择3Python语言概况2Python的应用3Python的实现4Python源码的执行5Python程序的运行模式6Python版本的选择1Python的特点3.1Python的特点简单高级面向对象可扩展免费和开源可移植丰富的库丰富的接口Python的设计哲学是明确、简单、优雅。Python关键字少,结构简单,语法清晰,易读,易维护。学习Python可以在短时间轻松上手。Python使用缩进格式。Python是高级语言,内置高级数据结构,程序员无需关心底层细节(如内存分配与回收),可以更高效地专著于问题本身。Python支持面向过程的编程,也支持面向对象的编程,还是一种函数式编程语言。Python提供丰富的API和工具,以便程序员能够轻松地使用C、C++语言来编写扩充模块,因此又被称之为“胶水语言”。3.1Python的特点简单高级面向对象可扩展免费和开源可移植丰富的库丰富的接口Python是自由/开放源码软件,允许自由地发布此软件的拷贝,阅读和修改其代码,或将其中一部分用于新的自由软件中。Python程序可以在Unix/Linux,Windows,Macintosh等不同主平台上运行。Python语言提供功能丰富的标准库,如网络、文件、数据库、图形界面、正则表达式、文档生成、单元测试等。拥有大量的第三方库。如科学计算库NumPy,SciPy,Matplotlib等。Python提供面向其它系统和专用库的接口,如数据库管理系统、计算机视觉库OpenCV、三维可视化库VTK、医学图像处理库ITK等。还可以将Python嵌入C、C++程序中。3Python语言概况3Python的实现4Python源码的执行5Python程序的运行模式6Python版本的选择2Python的应用1Python的特点3.2Python的应用应用广泛人工智能数值计算科学计算自然语言处理图形图像处理游戏开发日常管理小工具系统管理Web应用3Python语言概况2Python的应用4Python源码的执行5Python程序的运行模式6Python版本的选择3Python的实现1Python的特点3.3Python的实现CPython:称作ClassicPython,或CLanguagePython,是原始的、标准的Python实现方式,它是用可移植的ANSIC语言实现。Jython:最早称为JPython,是Python在Java环境中的实现方式。Jython实现了Python与Java的无缝集成,在Python中可访问所有Java类,从而用于开发WebApplet和Servlet,创建基于Java的GUI应用。IronPython:是在微软.NET平台上实现的Python。IronPython可访问所有.NET库。3.3Python的实现在不同平台或系统中,Python有不同的实现方式,但不同的实现方式只是代表了Python程序的执行形式不同,Python语言本身没有变化,在此基础上具有各自的特色。3Python语言概况2Python的应用3Python的实现5Python程序的运行模式6Python版本的选择4Python源码的执行1Python的特点3.4Python源码的执行Python不是单纯的解释型语言CPython:在执行程序时,Python会先将源代码文件(.py)编译成中间形式的字节码并存放在内存当中,然后在真正执行的时候再由Python虚拟机(PythonVirtualMachine,PVM)逐条将字节码翻译成机器指令执行。为了加快模块加载的速度,在对模块调用时,模块会编译成字节码并保存成文件(*.pyc),从而节省加载时间,达到提高效率的目的。3Python语言概况2Python的应用3Python的实现4Python源码的执行6Python版本的选择5Python程序的运行模式1Python的特点3.3Python的实现命令行交互模式文件模式3Python语言概况2Python的应用3Python的实现4Python源码的执行1Python的特点6Python版本的选择5Python程序的运行模式3.3Python的实现Python2.X:开发团队将在2020年完全停止支持Python3.0:2008年末发布,作为一项重大改革,以解决和修正以前语言版本的内在设计缺陷。Python3.X不能向前兼容Python2.X第01讲绪论集成开发环境(IntegratedDevelopmentEnvironment,IDE)是用于提供软件开发环境的一组软件服务套件(servicesuite),一般包括代码编辑器、编译器、调试器和图形用户界面设计等工具,集成了界面设计、代码编写、代码分析、代码编译、代码调试等功能,能够最大化地提高开发者的工作效率。集成开

1 / 67
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功