資源簡介 4.1.4《Python的函數(shù)—自定義函數(shù)》導(dǎo)學(xué)案姓名: 班級(jí):一、新知講解。自定義函數(shù)的格式 注意事項(xiàng)def 函數(shù)名(參數(shù)1,參數(shù)2…): <函數(shù)體> [return 函數(shù)值] def的含義是: 函數(shù)名的命名要求:調(diào)用函數(shù)的格式無參數(shù)時(shí) 函數(shù)名()有參數(shù)時(shí) 函數(shù)名(參數(shù)1,參數(shù)2…)二、鞏固練習(xí)1. 1個(gè)籃球場的長為28m,寬為15m,請(qǐng)自定義函數(shù),計(jì)算并輸出籃球場的面積。代碼 運(yùn)行結(jié)果sq( ): #自定義函數(shù) sq = 28 * 15 return lqc_sq= #調(diào)用函數(shù) print(lqc_sq) 4202.1個(gè)籃球場的長為28m,寬為15m;1個(gè)雙人羽毛球場的長為13.4m,寬為6.1m;1個(gè)足球場的長為105m,寬為70m,請(qǐng)自定義函數(shù),計(jì)算并輸出籃球場、羽毛球場、足球場的面積。代碼 運(yùn)行結(jié)果def sq( , ): #自定義函數(shù) sq = a*b return sq #返回結(jié)果 lqc_sq= #調(diào)用函數(shù) ymqc_sq= zqc_sq= print('1個(gè)籃球場的面積是',lqc_sq) print('1個(gè)羽毛球場的面積是',ymqc_sq) print('1個(gè)足球場的面積是',zqc_sq) 1個(gè)籃球場的面積是 420 1個(gè)羽毛球場的面積是 81.74 1個(gè)足球場的面積是 73503.學(xué)校有8個(gè)羽毛球場,8個(gè)籃球場,一個(gè)足球場,請(qǐng)修改程序,計(jì)算并輸出學(xué)校運(yùn)動(dòng)區(qū)域的總面積。代碼 運(yùn)行示例學(xué)校運(yùn)動(dòng)場的總面積是 11363.92三、實(shí)踐操作1.下列代碼的功能是找出兩個(gè)小組的最高成績?cè)诘?小組和第2小組。請(qǐng)分析代碼,嘗試自定義myMax( )函數(shù),返回成績列表的最大值,并調(diào)用myMax( )函數(shù),比較輸出最高成績?cè)谀膫€(gè)小組。原始代碼 自定義函數(shù)的代碼lst1=[91,95,90,88,93] max1=lst1[0] for i in lst1[1:]: if i>max1: max1=i lst2=[92,91,93,90,89] max2=lst2[0] for i in lst2[1:]: if i>max2: max2=i if max1>max2: print("最高分在第1小組") else: print("最高分在第2小組")2.下列代碼的功能是從鍵盤輸入3個(gè)三位正整數(shù),將其逆序輸出并相加。請(qǐng)分析左側(cè)代碼,嘗試自定義函數(shù),并調(diào)用自定義函數(shù),完成左側(cè)代碼的功能。原始代碼 自定義函數(shù)的代碼x=int(input()) y=int(input()) z=int(input()) xg=a%10 xs=a//10%10 xb=a//100 xb=str(xg)+str(xs)+str(xb) yg=b%10 ys=b//10%10 yy=b//100 yy=str(yg)+str(ys)+str(yb) zg=c%10 zs=c//10%10 zb=c//100 zz=str(zg)+str(zs)+str(zb) sum=int(xx)+int(yy)+int(zz) print(xx) print(yy) print(zz) print(sum)3.下列代碼的功能是能從鍵盤輸出整數(shù)n,計(jì)算并輸出1!+2!+…+n!的結(jié)果。請(qǐng)分析左側(cè)代碼,嘗試自定義函數(shù),并調(diào)用自定義函數(shù),完成左側(cè)代碼的功能。原始代碼 自定義函數(shù)的代碼n=int(input('請(qǐng)輸入整數(shù)n=')) s=0 for i in range(1,n+1,1): sj=1 for j in range(1,i+1,1): sj=sj*j s=s+sj print(s)四、課堂練習(xí)。請(qǐng)分析下列程序的運(yùn)行結(jié)果代碼 運(yùn)行結(jié)果def fun(x): x+=3 return x x=3 print(fun(x),x)def fun(): x=6 return x x=3 print(fun( ),x)import math def f(t): returnmath.ceil(t)+math.floor(t) m=f(-3.5) print(m)五、課后思考小智前四周的語文成績是:91,95,90,88;小慧前4周的語文成績是:92,91,93,90。有以下三種解題思路,請(qǐng)任選其一編寫程序,計(jì)算并輸出哪位同學(xué)的平均分最高?1.自定義函數(shù)avg(),計(jì)算每位同學(xué)的平均分2.使用內(nèi)建函數(shù)sum()和len()計(jì)算計(jì)算每位同學(xué)的平均分3.使用numpy的函數(shù)mean,計(jì)算計(jì)算每位同學(xué)的平均分程序 測試效果小慧的平均分最高 展開更多...... 收起↑ 資源預(yù)覽 縮略圖、資源來源于二一教育資源庫