一、Function(函数)的定义
1.定义函数名(函数名后面一定要有小括号和冒号)
2.编写函数体
3.返回函数值
4.调用函数
实例1:九九口诀
def JiuJiuKouJue(): #定义函数,函数名后面带小括号和冒号
for i in range(1,10): #函数体
for j in range(1,i+1):
k=i*j
print('{}*{}={}'.format(j,i,k),end='\t') #内循环分割用制表位
print('\n') #外循环换行
return True #返回函数值JiuJiuKouJue() #调用函数
结果
二、形参和实参(形式参数和实际参数)
1、定义函数里面的参数是形参,调用函数里面的参数是实参
2、一定是实参传递给形参,实参和形参的名称不一定相同但个数一定相等
实例2:求一个矩形的面积和周长,从键盘上输入底边和高
def getArea(width,height): #定义一个求矩形面积的函数
S=width*height #函数体(实现函数功能)
return S #返回函数值
def getPerimeter(width,height): #定义一个求矩形周长的函数
C=(width+height)*2 #函数体(实现函数功能)
return C #返回函数值
aa=float(input('请输入矩形的宽aa=')) #input在键盘上输入数据(字符串),但需要
bb=float(input('请输入矩形的高bb='))
S=getArea(aa,bb)
C=getPerimeter(aa,bb)
print('此矩形的面积为S=%.2f'%S)
print('此矩形的周长C=%.2f'%C)
结果:
实例3:天天向上的力量
1.假设一年的基础值为1,如果每天进步(退步)1%,一年365能进步多少?
def dayUp():
dayup=1
dayup=dayup*(1+0.01)
print('一年后能够进步多少:%.2f'%dayup)
dayUp()
2.如果每周学习5天进步1%,休息2天退步1%,一年能进步多少
def dayUp(): #给进步变量初始值为1
dayup=1 #给进步变量初始值为1
for i in range(365):
if i%7 in [1,2,3,4,5]:
dayup = dayup*(1+0.01) #相当于dayup*(1+0.01)
else:
dayup=dayup-dayup*0.01
print('一年后能进步:%.2f'%dayup)
3.‘三天打鱼两天晒网’--3天学习进步1%,2天不学习也不退步,2天退步1%
def Dayup():
dayup=1
for i in range(365):
if i%7 in [1,2,3]:
dayup=dayup*(1+0.01)
elif i%7 in [4,5]:
dayup=dayup
else:
dayup=dayup-dayup*0.01
print('一年后能够进步多少:%.2f'%dayup)
def dayUp(df):
dayup=1
for i in range(365):
if i%7 in [6,0]:
dayup=dayup-dayup*df
else:
dayup=dayup*(1+df)
return dayup
dayfactor =0.01 #将每天进步的初始值设为1%
while dayUp(dayfactor)<37.78: #如果每年的进步小于37.78将循环提高进步率0.001
dayfactor+=0.001
print("工作日的努力参数是:{:.3f}".format(dayfactor))
print("一年的努力成果是:{:.3f}".format(dayUp(dayfactor)))