(
课件网) t=s(13) print("该正方形的面积为:",t) s=a*a a1=12 s1=a1*a1 print(s1) s=a*a a2 = 24 s2 = a2*a2 print(s2) s=a*a a3 = 34 s3 = a3*a3 print(s3) 求边长为12,24,34的正方形面积 思考:上面这段代码的效率高吗? 重复代码 怎么提高上面这段代码的效率? t=s(13) print("该正方形的面积为:",t) def s(a): #求正方形面积s s = a*a return s #调用求正方形面积s函数 s1 = s(12) s2 = s(24) s3 = s(34) print(s1, s2, s3) 函数 #调用函数求长方形面积 def s(a,b): s = a*b return s t = s(4,6) print("该正方形的面积为:", t) #调用函数求长方形面积 def s(a,b): s = a*b return s t = s(4,6) print("该正方形的面积为:", t) 为什么要学习、使用函数呢 为了得到一个针对特定需求、可供重复利用的代码段提高程序的复用性,减少重复性代码,提高开发效率 想一想:为什么要学习、使用函数呢 为了得到一个针对特定需求、可供重复利用的代码段提高程序的复用性,减少重复性代码,提高效率。 函数 1、定义:组织好的,可重读使用的,用来实现特定功能的代码段 系统函数 函数库中的标准函数,是程序设计语言或操作系统提供给用户的一系列已经编好的程序。 print( ) input( ) max( ) min( ) 自定义函数 用户自定义函数 用户自己编写的一段程序。 常见系统函数有以下几种: 数学运算类函数 数据转换类函数 字符串操作类函数 输入输出函数 文件操作类函数 其他函数 2、分类 函数 3、函数定义与使用 def 函数名(参数): #函数说明 语句或语句组 return 返回值 定义函数的基本格式: 参 数: 向函数传递值,多个参数用逗号隔开 返 回 值:将表达式的值返回给调用者 函 数 名:同变量命名规则 函数 4、函数调用 采用函数名(参数) 的方式 因为出现def,所以跳过 因此,这一行才是主程序的第一行,从这里开始执行。 def s(a): #求正方形面积 s = a*a return s s1=s(12) s2=s(24) s3=s(34) print(s1,s2,s3) 程序自上而下逐行执行 这里调用函数,参数a变成12,24,34 参数是用来向函数传递值的,是不是只能有一个参数? #调用函数求长方形面积 def s(a,b): s = a*b return s t = s(4,6) print("该正方形的面积为:", t) 函数 函数调用求长方形面积 def s(a,b): #求正方形面积 s = a*b return s #调用s函数 area= s(14,25) print(“该长方形的面积为:", area) 参数是用来向函数传递值的,可以有多个参数,当有多个参数时,各个参数之间用逗号隔开。 #调用函数求长方形面积 def s(a,b): s = a*b return s t = s(4,6) print("该正方形的面积为:", t) 函数分:系统函数和自定义函数 自定义函数 系统函数 #调用函数求长方形面积 def s(a,b): s = a*b return s t = s(4,6) print("该正方形的面积为:", t) 函数 函数调用求n! def factorial(n): #求n! s = 1 for i in range( 2,n+1 ): s = s*i return s #调用factorial函数 total = factorial(4) print(total) 思考练习 利用函数编写程序,求1! +2! +3! +……+100!的值。 def factorial(n): #求n! s=1 for i in range(2,n+1): s=s*i return(s) #调用factorial函数 total= for t in range( , ): total=total+factorial( ) print(total) 0 1 101 t 思考练习 利用函数编写程序,求2*8!+4*6! +6*4! +8*2!的值。 def factorial(n): #求n! s = 1 for i in range(2, n+1): s = s*i return(s) #调用factorial函数 total =2*factorial(8) + + + print(total) 4*factorial(6) 6*factorial(4) 8*factorial(2) 思考练习 def factorial(n): #求n! s = 1 for i in range(2, n+1): s = s*i return(s) total = print(total) 1、该程序中定义了 ... ...