在程序开发中,有时候会希望一个函数执行结束后,告诉调用者一个结果, 以便调用者针对具体的结果做后续的处理。
●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)
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))
程序设计有个原则,需求是不停的变化的,可以修改函数外部的代码,但函数定义后,不应该修改内部的代码
# 需求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("太小了")
一个函数里面又调用了 另外一个函数,这就是函数嵌套调用。 如果函数 test2 中,调用了另外一个函数 test1 那么执行到调用 test1 函数时,会先把函数 test1 中的任务都执行完 才会回到 test2 中调用函数 test1 的位置,继续执行后续代码
# 一个函数里面又调用另一个函数
def test1():
print("我是test1")
def my_func():
print("我是my_func")
def test2(): #如果不调用test2函数,那么test1和my_func都不执行
test1() # test2 内部调用了test1
my_func()
test2() # 程序第一条执行的语句
执行结果
"D:\Program Files1\Python\python.exe" D:/Pycharm-work/pythonTest/函数/13函数的嵌套.py
我是test1
我是my_func
Process finished with exit code 0
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。