(本科)第7章电子教案ppt课件.pptx

上传人:春哥&#****71; 文档编号:16399304 上传时间:2022-05-17 格式:PPTX 页数:92 大小:1.96MB
返回 下载 相关 举报
(本科)第7章电子教案ppt课件.pptx_第1页
第1页 / 共92页
(本科)第7章电子教案ppt课件.pptx_第2页
第2页 / 共92页
点击查看更多>>
资源描述

《(本科)第7章电子教案ppt课件.pptx》由会员分享,可在线阅读,更多相关《(本科)第7章电子教案ppt课件.pptx(92页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、课程主讲人:(本科)第7章电子教案ppt课件程序设计基础东北石油大学东北石油大学 Python的由来 Python的创始人为荷兰的Guido 1989年,Guido为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,做为ABC 语言的一种继承。之所以选中Python作为该编程语言的名字,是因为他是一个喜剧团体Monty Python的爱好者。 Python的特点 免费开源 简单易学 代码规范 面向对象 高级语言 解释性 可扩展 可移植性 丰富的库9大特 点 Python的应用领域应用应用领域领域WebWeb开发开发网络网络爬虫爬虫科学科学计算计算人工人工智能智能系统系统编程编程云计云计算算游戏

2、游戏开发开发 Python的版本:2.x版本和3.x版本历 史 版 本Python的两种编程方式 在命令行“”提示符的后面直接输入语句,在输入完成后直接按回车键,即可执行语句并输出运行结果。 常用于做语法练习常用于做语法练习。 交互式交互式 把一段代码写在一个python文件中,然后批量执行这些代码并输出运行结果。 编程的主要方式。编程的主要方式。 文件式文件式Python自带两款编程软件命令行解释器命令行解释器 只能用于交互式编只能用于交互式编程程集成开发环境集成开发环境IDLEIDLE 既能用于交互式又既能用于交互式又能用于文件式编程能用于文件式编程实例1:计算圆周长r=5c=2*3.14

3、15926*rprint(c) r=5 c=2*3.1415926*r c31.415926 print(c)31.415926保存为test.py文件运行结果为:31.415926 交互式交互式 文件式文件式 输入输入( (或赋初值或赋初值) ) 处理处理 输出输出123PythonPython程序的三大组成部分程序的三大组成部分给给出要解决问题的已知条件出要解决问题的已知条件使用给定的已知条件,根据使用给定的已知条件,根据算法算法进进行计算产生运算结果行计算产生运算结果把运算结果展示给用户把运算结果展示给用户r=5 c=2*3.1415926*r print(c)计算圆周长的程序计算圆周长

4、的程序首先,种下种子然后,种子吸收阳光雨露生长,发芽、开花、结果最后,摘下成熟的果实种子的成长史种子的成长史# #赋赋初值初值# #处理处理# #输出输出举例说明举例说明r=5 c=2*3.1415926*r print(c)计算圆周长的程序计算圆周长的程序思考问题思考问题如果要求任意半径的圆周长,在Python中该如何实现呢?inputinput函数函数输入函数input()p使用格式: 变量= input ()p作用: 把用户输入的信息以字符串形式保存在左侧被赋值的变量中。举例:输入您的姓名name= input ()name= input (请输入你的姓名:)evaleval函数函数ev

5、al函数p使用形式: 变量= eval( 字符串 )p作用: 去掉字符串最外侧的引号,通常用于把输入的字符串转化为数值型;如果输入的字符串是一个表达式,还可以按照Python语句的形式执行去掉引号后的表达式。举例:输入半径求周长c=2*3.115926*rc31.415926r= eval( ) input( )举例:用input输入一个表达式并计算 x=eval(input()2+3*4 x14举例:一次输入多个数值型的数据 一般形式: 变量1,变量n= eval( input() ) 注意: 在输入数据时各数据中间一定也要用逗号隔开。r=eval(input(请输入半径:) c=2*3.1

6、415926*r print(c)输入半径求圆周长输入半径求圆周长思考问题思考问题如果想按照指定的格式来输出数据,比如:周长=周长值,在Python中该如何实现呢?printprint函数函数输出函数输出函数print()print()p一般格式: print()p使用说明: print函数在使用时,可以没有参数,也可以有一个或者多个参数。 第一种形式:没有参数第一种形式:没有参数p使用格式: print( )p使用说明: 当print函数没有参数时,只起回车换行的作用。第二第二种形式:种形式:只有一个参数只有一个参数p使用格式: print( value)p使用说明: 当print函数只有一

7、个参数时,输出这个参数的值后自动回车换行。第三第三种形式:种形式:有多个参数有多个参数p使用格式: print( value, ., value)p使用说明: 当print函数有多个参数时,在输出的各参数的值之间用一个空格分隔,并在输出所有参数的值之后自动回车换行。第四第四种形式:种形式:修改默认分割符或修改默认分割符或结尾结尾符符p使用格式: print( value, ., value,sep=分隔符) print( value, ., value,end=结尾符) print( value, ., value,sep=分隔符,end=结尾符)print函数用法举例print(a)prin

8、t(b)print(a,b)print(a,b,sep=,)print(a,end= )print(b)print(a,b,sep=,end=,)a=1 ; b=21 21 21,2程序运行结果:1 21,2, r=eval(input(请输入半径:) c=2*3.1415926*r print(c)输入半径求圆周长输入半径求圆周长思考问题思考问题如果想要输出的结果为:周长=周长值print函数该如何使用呢?print(周长=,c)r=eval(input(请输入半径:) c=2*3.1415926*r print(c)输入半径求圆周长输入半径求圆周长思考问题思考问题print(周长=,c)运

9、行结果运行结果请输入半径: 5周长= 31.415926 如果想要去掉等号后面的空格,print又该如何修改呢?格式化输出1、字符串格式化格式控制字符串%(输出项1,输出项2,.,输出项n)格式控制字符串包括普通字符和格式控制符 普通字符:可显示的字符和用转义字符表示的字符。 格式控制符:决定所对应的输出项的格式,以%开头 print(%d,%f%(a,b) 格式化输出例如:name =小明小明age=20score=85.5print(%s今年今年%d岁,岁,计算机计算机成绩成绩%.2f%(name,age,score) )输出结果:小小明今年明今年20岁岁,计算机成绩计算机成绩85.50

10、一般形式:格式字符串.format()(输出项1,输出项2,输出项n) 其中格式字符串使用大括号括起来,一般形式为: 序号或键:格式说明符 常见的格式符号格式符号格式符号说明说明%s 通过str()字符串转换来格式化 %d 有符号十进制整数 %f 浮点实数。%5.2f表示数据输出占5列,小数点后保留2位小数。%e 指数形式格式化输出2.print+format按照统一按照统一的格式规范的格式规范输出一个字符串输出一个字符串。name =小明age=20score=85.5print(今年岁,计算机成绩:.2f.format(name,age,score)基本输入输出函数函数函数说明说明inpu

11、tinput从控制台获得用户输入的函数从控制台获得用户输入的函数evaleval去掉字符串外侧的引号去掉字符串外侧的引号printprint以字符形式向控制台输出结果的函数以字符形式向控制台输出结果的函数算术运算符运算符相关说明+加:两个对象相加-减:得到负数或一个数减去另一个数*乘:两个数相乘或是返回一个被重复若干次的字符串/除:x除以y/整除:返回商的整数部分%取余:返回除法的余数*幂:返回x的y次幂 赋值运算符=赋值运算符作用是把等号右边的值赋给左边的变量。例如例如:为1个变量赋1个值: x=1为多个变量赋同一个值: x=y=z=1将多个值赋值给多个变量: x, y = 1, 2 复合赋

12、值运算符运算符运算符相关说明相关说明实例实例+=加法赋值运算符c+=a等效于c=c+a-=减法赋值运算符 c-=a等效于c=c-a *=乘法赋值运算符 c*=a等效于c=c*a /=除法赋值运算符 c/=a等效于c=c/a /=整除赋值运算符 c/=a等效于c=c/a %=取模赋值运算符 c%=a等效于c=c%a *=幂赋值运算符 c*=a等效于c=c*a 选择结构程序设计选择结构程序设计引例:输入半径求周长。r=eval(input(请输入半径:) c=2*3.1415926*r print(周长=,c)如果输入的半径r是负数,程序如何执行呢?关系运算符和单分支关系运算符和单分支ifif语句

13、语句关系运算符运算符名称描述大于xy成立时值为True,否则为False小于x=大于等于x=y成立时值为True,否则为False=小于等于x3值为True5=3值为True5=0 r=0 : : c=2 c=2* *3.14159263.1415926* *r r print(c) print(c)p 紧凑形式 if 条件: 语句块if if r=0r=0: : c=2c=2* *3.14159263.1415926* *r r ; ; print(c print(c) )注意:如果语句块的代码多于一条,则要把各条语句中间用一个分号连接。语句块是连续的具有相同缩进的语句组引例:输入半径求周长

14、。如果输入的半径r是负数时,要输出“半径不能是负数”的错误提示,该如何编程呢?r=eval(input( )if r=0 : if r=0 : c=2 c=2* *3.14159263.1415926* *r r print(c) print(c)if r0:if r=0 r=0 : : c=2 c=2* *3.14159263.1415926* *r r print(c) print(c)if r0:if rc 并且 a+cb 并且 b+cap 算法描述: 如果 a+bc 并且 a+cb 并且 b+ca成立,输出“能构成三角形” 否则输出“不能构成三角形”关系关系运算符运算符两分支两分支if

15、if语句语句逻辑逻辑运算符运算符逻辑运算符运算符运算符名称名称描述描述and 逻辑与x and y,如果x和y都为True,则x and y的值为True,否则为Falseor 逻辑或x or y ,如果x和y有一个为True,则x or y的值为True,否则为Falsenot 逻辑非not x ,如果x为True,则not x 的值为False,否则为True举例53 and 4353 and 4353 and 43 or 4353 or 4353 or 43not 5c and a+cb and b+ca : print(能构成三角形)else: print(不能构成三角形)例2:输入一

16、个年份x,判断是否为闰年? 判断闰年的条件:能被 4 整除但不能被 100 整除,或者能被 400 整除的年份,是闰年。 设年份为x,则判断闰年的表达式为: x % 4=0 and x%100 !=0 or x % 400=0 例3:输入一个学生的成绩x,判断该学生的成绩等级:优秀(x90),及格(90 x60),不及格(x=90: print (优秀)if 90 x=60: print (及格)if xx=60: print (及格)if x=90: print (优秀)elif elifelse:x=60: print (及格)print (不及格)例4:输入三角形的三条边,判断三角形是等

17、边、等腰还是一般?a,b,c=eval(input( )if a=b=c : print(等边)elif a=b or b=c or a=c : print(等腰)else: print(一般)p 算法描述:1. 输入三角形的三条边2. 如果三条边都相等,输出等边; 否则如果有两条边相等,输出等腰; 否则输出一般。例4:输入三角形的三条边,判断三角形是等边、等腰还是一般?如果输入的三条边不能构成一个三角形时,程序该如何处理呢?方法:程序应该先判断输入的三条边能构成三角形的条件,如果能构成三角形时,再接着判断是哪种类型的三角形,否则输出不能构成三角形。ifif的嵌套的嵌套ifif语句的嵌套语句的

18、嵌套p 一般形式if 条件条件1 : if 条件条件2: 语句语句块块1 else: 语句块语句块2else : if 条件条件3: 语句块语句块3 else : 语句块语句块4其中的其中的elseelse子子句可以句可以省略省略例5:输入三条边a,b,c的值,判断是否能构成三角形,如果能构成三角形则判断是等边、等腰还是一般,否则输出不能构成三角形。a,b,c=eval(input( )if a+bc and a+cb and b+ca: if a=b=c: print(等边) elif a=b or b=c or a=c: print(等腰) else: print(一般)else: pri

19、nt(不能构成三角形)p 算法描述:1. 输入a、b、c的值2. 如果任意两边之和大于第三边如果三条边都相等,输出等边; 否则如果有两条边相等,输出等腰;否则输出一般。 否则输出不能构成三角形例6:输入一个学生成绩,当成绩在0100之间时,判断该学生的成绩等级(优秀、及格、不及格),否则输出“数据错误”的提示。x=eval(input( )if 0=x=90 : print (优秀) elif x=60 : print (及格) else : print (不及格)else: print(数据错误)循环循环结构程序设计结构程序设计引引例:输入例:输入3 3个数,编程求累加和。个数,编程求累加和

20、。x1=eval(input( )x2=eval(input( )x3=eval(input( )s=x1+x2+x3print(和=,s)输入8个数求累加和,该如何编程呢?我好渴,我能喝掉八杯水!方法方法1:方法方法2:例如:输入8个数,求累加和。 算法描述:(1)s=0(2)i=1(3)如果i=8,则 输入一个数x s=s+x i=i+1(4)输出s Python代码:s=0i=1while i=8:x=eval(input( )s=s+xi=i+1print(s)whilewhile循环语句循环语句p 一般形式while 表达式: 语句块p 执行过程当表达式值为真(非0)时,重复执行语句

21、块,直到表达式值为假,跳出循环。循环体语句表达式TrueFaslewhile的后续语句的后续语句表达式循环体语句块True表达式例如:输入8个数,求累加和。100个数,求累加和。 算法描述:(1)s=0(2)i=1(3)如果i=8,则 输入一个数x s=s+x i=i+1(4)输出s Python代码:s=0i=1while i=8:x=eval(input( )s=s+xi=i+1print(s)100,则100:例如:求1-100的累加和。s=0i=1while i=100:x=eval(input( )s=s+xi=i+1print(s) i x s 1 1 1 2 2 1+2 3 3

22、1+2+3 100 100 1+2+100i例如:求1-100的累乘积。s=0i=1while i=100:s=s + ii=i+1print(s)*1例:用辗转相除法求两个数的最大公约数m=int(input(a=)n=int(input(b=)r=m%nwhile(r!=0):m=nn=rr=m%nprint(n)for循环语句for 循环变量 in 遍历结构:语句块p 一般形式p 执行过程将遍历结构中的元素逐一取出,赋给循环变量,然后执行循环体语句。例:for i in 1,2,3: print(i) 123for循环语句例:求1-10的累加和。s=0for i in 1,2,3,4,5

23、,6,7,8,9,10:s=s+i遍历由range()函数产生的数字序列,产生循环for i in range(N):for循环语句01234例如:for i in range(5):print(i)for循环语句例:求1-10的累加和。s=0for i in range(1,11):s=s+i遍历由range()函数产生的数字序列for i in range(M,N,K):例:求1-10的奇数和。s=0for i in range(1,11,2):s=s+ifor循环语句for i in python:print(i)遍历字符串序列for i in 字符串:python循环嵌套p循环嵌套指的

24、是在循环里面还包含while或for循环。 for i in 1,2: for j in 1,2,3:print(i,j)运行结果:1 11 21 32 12 22 3for i in range(1,3): for j in range(1,4):print(i,j)例:打印水仙花数。如例:打印水仙花数。如153=1153=13 3+5+53 3+3+33 3方法2:for i in range(1,10): for j in range(0,10): for k in range(0,10): n=i*100+j*10+k m=i*3+j*3+k*3 if(n=m): print(n)方法

25、1:for x in range(100,1000):i=x%10j=x/10%10k=x/100if(x=i*3+j*3+k*3):print(x)例:求1!+2!+20!的和方法2:s=0t=1for n in range(1,21):t= t * ns= s + tprint(s)方法1:s=0for n in range(1,21):t=1for i in range(1,n+1): t=t*is=s+tprint(s)break和continue语句break语句用于结束整个循环,continue的作用是用来结束本次循环,紧接着执行下一次的循环。 for i in range(5):

26、if(i=3):breakprint(i) for i in range(5):print(i)for i in range(5):if(i=3):continueprint(i)012401201234例:某单位排队形,开始排成3路纵队,末尾多出了2人;后来改成5路纵队,末尾又多出了3人;最后改成7路纵队,正好没有余数。编程序求出该单位至少有多少人。x=7while(True):if(x%3=2 and x%5=3):breakx=x+7print(x)else和循环语句p当循环没有从break语句退出时,执行else语句块,else语句块可以看作是“正常”完成循环的奖励。for i in

27、range(5):if(i=3):breakprint(i)else:print(i, end) for i in range(5):print(i)else:print(i, end)运行:运行:012344 end运行:运行:012else和循环语句pelse语句可以和循环语句结合使用,并且else语句只在循环完成后执行。i = 0while i 3: print(i) i = i + 1else: print(i, end)运行结果分别是什么?for count in range(0,3): print(i) else: print(i, end)while和forpwhile 循环比f

28、or循环更通用任何 for 循环写的程序都能用 while 循环实现pfor 循环适用于:循环次数确定的情况,即已知起止值和步长pwhile 循环适用于:循环次数不确定的情况函数函数什么是函数?p函数是可重复使用的,用来实现特定功能的代码段。p使用函数的优点:实现代码复用、化难为易,提高程序的开发效率实现程序的模块化,缩小程序的开发周期函数的分类p从用户的使用角度划分: 系统函数 用户自定义函数p从函数的定义形式划分: 无参数,无返回值的函数 无参数,有返回值的函数 有参数,无返回值的函数 有参数,有返回值的函数函数的定义和调用函数的定义和调用函数的定义和函数的定义和调用调用n 函数定义的一般

29、形式:def def 函数名函数名( ( 形参列表形参列表 ) ): : 函数体函数体例例1 1:编程输出下图所示:编程输出下图所示图形图形。*print(*)print(*)print(*)print(*)def printstar( ) : n注意:注意:函数函数体相对于体相对于defdef关键字必须有一定关键字必须有一定的缩进的缩进。无参无返回值函数函数的定义和函数的定义和调用调用n 函数调用的一般形式:函数函数名名(实参列表实参列表) ) print(*)print(*)print(*)print(*)def printstar( ) : printstar() #调用函数例例2 2:

30、编程输出一个:编程输出一个n n行直角星型。行直角星型。*无参无返回值函数函数的定义和函数的定义和调用调用n 函数调用的一般形式:函数函数名名(实参列表实参列表) ) n=eval(input() for i in range(1,n+1): print(* * i)def printstar( ) : printstar() #调用函数例例2 2:编程输出一个:编程输出一个n n行直角星型。行直角星型。*无参无返回值函数注意:一般注意:一般情况情况下,不在函数中输入数据。下,不在函数中输入数据。printstar() #调用函数 n=eval(input() for i in range(1

31、,n+1): print(* * i)函数的定义和函数的定义和调用调用n 函数调用的一般形式:函数函数名名(实参列表实参列表) ) def printstar( ) : printstar() #调用函数例例2 2:编程输出一个:编程输出一个n n行直角星型。行直角星型。*无参无返回值函数注意:一般注意:一般情况情况下,不在函数中输入数据。下,不在函数中输入数据。n=eval(input()(n)(n)有参无返回值函数注意:形参和实参名字可以相同注意:形参和实参名字可以相同, ,也可以不相同也可以不相同, ,但所占内存不同。但所占内存不同。方法1:定义无参无返回值的函数def addnum(

32、): a,b=eval(input() #输入两个数 c=a+b print(c) #输出结果addnum() #调用函数方法2:定义有参无返回值的函数def addnum(a,b): c=a+b print(c) #输出结果x,y=eval(input() #输入两个数addnum(x,y) #调用函数方法3:定义无参有返回值的函数def addnum( ): a,b=eval(input() c=a+b return(c)z=addnum( ) #调用函数print(z) #输出结果方法4:定义有参有返回值的函数def addnum(a,b): c=a+b return(c) x,y=eval(input() #输入两个数z=addnum(x,y) #调用函数print(z) #输出结果注意:除了专门用于输入输出的函数,通常不在函数中进行输入和输出操作。注意:除了专门用于输入输出的函数,通常不在函数中进行输入和输出操作。

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

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁