程序设计基础课件:第4讲Python语法II_第1页
程序设计基础课件:第4讲Python语法II_第2页
程序设计基础课件:第4讲Python语法II_第3页
程序设计基础课件:第4讲Python语法II_第4页
程序设计基础课件:第4讲Python语法II_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、上讲回顾,算法的概念、三种基本控制流程 算法的表示方法 流程图 N-S图 UML Python控制语句 条件判断ifelifelse 循环语句while 循环语句forin,程序设计基础,1,用ifelifelse结构改写猜数字程序,程序设计基础,2,利用while语句改进猜数字程序,问题:程序员自己知道答案,没有意思! 解决方法:由计算机产生随机数作为标准答案。,程序设计基础,3,至此,游戏基本成型!,随机数模块,python提供了很多模块,用来实现各种常见的功能,比如时间处理、科学计算、网络请求、随机数等。 通过模块,则可以重用别的程序中的代码。 引入模块的方法: from 模块名 imp

2、ort 方法名 产生随机整数的方法: 在程序的最开头写上: 然后用randint函数来产生随机数: randint函数括号中提供两个数字,先后分别是产生随机整数范围的下限和上限。,程序设计基础,4,带随机数功能的猜数字程序,程序设计基础,5,循环语句forin,同while一样,for循环也可以用来重复做一件事情。 例如:编程输出1到100 用while语句实现 i=i+1 用for循环语句实现,程序设计基础,6,需要一个值记录循环次数:i 需要在while后面判断是否输出到100 设置while循环终止条件,循环的嵌套,设想:需要输出5个字符* 用for循环语句实现:,程序设计基础,7,如何

3、让5个*在同一行输出?,探讨print的用法,循环的嵌套,print函数原型默认以n结尾 在同一行输出5个字符*的for循环语句,程序设计基础,8,循环的嵌套,编程实现输出以下图形:,程序设计基础,9,循环的嵌套,两层循环嵌套 第二个for循环在第一个for循环的内部,表示每一次外层的循环中,都要进行一遍内层的循环; 第二个print的缩进和内层的for是一样的,这表明它是外层for循环中的语句,每次i的循环中,它会执行一次; 第二个print后面没有写任何东西,起换行的作用。,程序设计基础,10,第4讲 Python语法II,函数 内置数据类型list和tuple,11,程序设计基础,初识函

4、数,圆的面积计算公式:S=r2 计算3个不同大小的圆面积的代码 代码出现有规律的重复; 反复书写3.14*x*x很麻烦; 若需要更改的精度(3,得全部替换。,程序设计基础,12,初识函数,采用函数调用的形式 s=3.14*x*x s=area_of_circle(x) 函数area_of_circle本身只需要写一次,可以多次调用。 基本上所有的高级语言都支持函数; Python能灵活地定义函数,本身也内置了很多有用的函数,可以直接调用。,程序设计基础,13,函数: 代码抽象,抽象是数学中非常常见的概念。 以计算数列的和为例:1+2+3+100 求和符号 数列和记作:

5、 =1 100 更复杂的抽象记法: =1 100 ( 2 +1) 借助抽象,可以不关心底层具体计算过程,而直接在更高层次上思考问题。 函数是最基本的一种代码抽象的方式。,程序设计基础,14,调用函数,Python内置了很多有用的函数,可以直接调用。 print()、input()、int()、range() 要调用一个函数,需要知道函数的名称和参数。 查看文档:/3/library/functions.html 在交互式环境中,通过help()查看待调用函数的帮助信息,程序设计基础,15,调用函数须知,调用abs函数的代码示例: 调用函数时,若传入的

6、参数数量不对,报TypeError错误。,程序设计基础,16,Python明确指出: abs()有且仅有1个参数,但给出了两个。,调用函数须知,调用函数时,若传入的参数数量是对的,但参数类型不能被函数所接受,也会报TypeError错误。 错误信息:str是错误的参数类型 调用函数小结 根据函数定义,传入正确的参数; 如果函数调用出错,一定要学会看错误信息。,程序设计基础,17,英文很重要! _,调用函数练习,利用Python内置的hex()函数把一个整数转换成十六进制表示的字符串。 查看hex函数的帮助信息: 课后练习:学习max函数的用法,程序设计基础,18,定义函数,函数定义格式: de

7、f function_name( arg1, arg2,. ): statement# 函数体 return value 关于函数名 函数名必须以下划线或字母开头,可以包含任意字母、数字或下划线的组合,不能使用任何的标点符号; 函数名是区分大小写的; 函数名不能是保留字。,程序设计基础,19,我们的第一个自定义函数,自定义一个求绝对值的my_abs函数: 测试并调用my_abs函数:,程序设计基础,20,函数体内部的语句在执行时,一旦执行到return时,函数就执行完毕,并将结果返回; 如果没有return语句,函数执行完毕后也会返回结果,只是结果为None。 return None可以简写为

8、return。 None:空值,Python里的一个特殊值(不可理解为0)。 空函数 定义一个什么事也不做的空函数,用pass语句; 作用:pass可以用来作为占位符,比如现在还没想好怎么写函数的代码,可以先放一个pass,让代码能运行起来。,定义函数须知,程序设计基础,21,定义函数来改进猜数字程序,程序设计基础,22,函数的返回值,提问:函数可以返回多个值吗?答案是肯定的。 案例分析: 游戏中经常需要从一个点移动到另一个点,给出坐标、位移和角度,就可以计算出新的新的坐标。 import math语句表示导入math包,允许后续代码引用math包里的sin、cos等函数;,程序设计基础,23

9、,函数的返回值,move的返回值 两个返回值是“假象”; 函数返回的仍然是单一值:tuple(元组),程序设计基础,24,定义函数小结,定义函数时,需要确定函数名和参数个数; 如有必要,可以先对参数的数据类型做检查; 函数体内部可以用return随时返回函数结果; 函数执行完毕也没有return语句时,自动return None。 函数可以同时返回多个值,但其实就是一个tuple。,程序设计基础,25,第4讲 Python语法II,函数 内置数据类型list和tuple,26,程序设计基础,list (列表),Python内置的一种数据类型,是用来处理一组有序项目的数据结构。 例如购物清单、待

10、办工作、手机通讯录等,都可以看作是一个列表; list是一种有序的集合,可以随时添加和删除其中的元素。 列表的定义 格式是用中括号包围、逗号隔开的一组数值。,程序设计基础,27,list (列表)的操作,获得list元素的个数 用len()函数。 访问list中的元素 用索引访问list中每一个位置的元素,索引从0开始; 索引不要越界,最后一个元素的索引是len() 1; 可以用-1做索引,直接获取最后一个元素,以此类推,可以获取倒数第2个、倒数第3个; 当索引超出了范围时,Python会报一个IndexError错误。,程序设计基础,28,list (列表)的操作,修改list中的元素 直接

11、给指定位置的元素赋值。 list是可变的有序表 append:追加元素到list末尾: insert:把元素插入到指定位置; pop:删除list末尾的元素; pop(i):删除指定位置的元素。,程序设计基础,29,list (列表)的元素数据类型,list里面的元素的数据类型可以不同: list元素也可以是另一个list,比如: s只有4个元素,其中s2又是一个list; s可以看成是一个二维数组。 思考:s20、s21分别对应的值?,程序设计基础,30,tuple (元组),元组:另一种有序列表。 tuple和list非常类似,但是tuple一旦初始化就不能修改。 没有append()、insert()这样的方法; 获取元素的方法和list一样,按索引; tuple中的元素不能赋值成另外的元素。 元组的定义 格式是用圆括号包围、逗号隔开的一组数值。,程序设计

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论