文章目录
第3章 函数----返回值
3.1、return关键字
3.2、函数参数和返回值练习
3.3、为什么函数要用户return
第3章 函数----返回值
在程序开发中,有时候会希望一个函数执行结束后,告诉调用者一个结果,
以便调用者针对具体的结果做后续的处理。
3.1、return关键字
●return的意义
。需求不停的变化,但函数一 旦定义函数内部的代码不应该因为需求改变而改变
。所以要把因为需求而改变的代码放到函数之外,函数之内代码函数定义完不改变
●有时候,函数并不是要显示什么内容,而是要把一个值返回给调用者, 比如python自带的
len函数就是这样的
●函数内容通过return返回给调用者一个值
●return后面可以是常量,也可以是表达式
# # 对于没有返回值的函数,调用方法,直接函数名(参数) # print("hello python") # 对于没有返回值的函数,调用方法。直接函数名(参数) # len函数是有返回值的函数 a = len("hello python") # 会把一个值返回个调用者 print(a) print(len("hello python"))
在程序开发中,有时候会希望一个函数执行结束后,告诉调用者一个结果,
以便调用者针对具体的结果做后续的处理。
# 有返回值的函数 def my_sum(a,b): return a + b # 把a + b 的结果,返回给调用者 num1 = my_sum(2,3) # 调用my_sum函数,所以num得到了函数的返回值 print(num1) print(my_sum(5,6))
执行结果 "D:\Program Files1\Python\python.exe" D:/Pycharm-work/pythonTest/函数/06函数的返回值.py 5 11 Process finished with exit code 0
返回两个参数中的最大值
# 返回两个参数中的最大值 def my_max(num1,num2): if num1 > num2: return num1 else: return num2 a = my_max(50,6) # 调用函数,实参是5和6,形参num1的值是5,形参num2的值是6 print(a)
3.2、函数参数和返回值练习
1.定义一个函数,有两个参数,start和stop, start代表开始范围,stop 代表终止范围,求这个范围中所有整数相加的和
# 有返回值的函数 ''' 计算一个区间范围内的和 ''' def my_func1(start,stop): # start 形参 sum = 0 a = start while a<= stop: sum += a a += 1 return sum num1 = my_func1(4,10) print(num1)
2.定义一个函数能够根据半径计算圆的面积
def cir(r): pai = 3.14 return pai * r**2 print(cir(10)) print(cir(15)) a = cir(20) + cir(30) # 计算两圆的和 print(a)
3.定义一个函数,名字叫my_ squar, 功能为计算矩形的面积,
有两个参数height与width,分别代表矩形的高和宽;
函数返回值为矩形的面积;
如调用my_ squar(3, 4),函数返回值为12。
def my_squar(height,width): return height * width a = my_squar(3,4) # 定义一个变量a,得到调用my_squar函数的返回值 print(a) #或者 print(my_squar(3,4))
4.定义一个函数,名字叫my_ func,有两个参数num1与num2,当num1能被
num2整除时,返回值为True,否则返回值为False。
如:调用my_ func(8, 4),函数返回值为True。
如:调用my _func(9, 4),函数返回值为False。
def my_func(num1,num2): if num1%num2==0: return True else: return False print(my_func(8,4)) print(my_func(9,4))
3.3、为什么函数要用户return
程序设计有个原则,需求是不停的变化的,可以修改函数外部的代码,但函数定义后,不应该修改内部的代码
# 需求1 # 计算两个整数的和,当和等于10的时候显示10,当和大于10的时候显示太大了,当和小于10的时候显示太小了 # 需求2 # 计算两个整数的和,当和等于100的时候显示100,当和大于100的时候显示太大了,当和小于100的时候显示太小了 # def my_sum(a,b): # c = a + b # if c == 10: # print(c) # elif c > 10: # print("太大了") # else: # print("太小了") # # my_sum(4,6) # my_sum(12,3) # my_sum(2,5) # 程序设计有个原则,需求是不停的变化的,可以修改函数外部的代码,但函数定义后,不应该修改内部的代码 def my_sum(a,b): return a + b a = my_sum(4,5) if a == 10: print(a) elif a > 10: print("太大了") else: print("太小了")