1.函数的返回值:
a.就是函数返回给调用者的值
b.就是return关键字后面的表达式的值
c.就是函数调用表达式的值
python中每个函数都是有返回值的,返回值就是return后面的值,如果函数中没有return,那么返回值就是none
print 里面的字符串不是return的返回值
(重点)函数的调用:
a.先回到函数调用的位置
b.用实参给形参赋值(传参)
c.执行函数体
d.执行完函数提,将返回值返回给函数调用表达式
e,回到函数调用的位置
注意:函数的函数体只有在调用后才会执行
2.return关键字
a.将return后面的值返回给函数调用表达式
b.结束函数
3.函数调用表达式:
python中每个函数调用表达式都是有值的
def func1():
print('ddd')
func1() # 函数调用表达式
运行结果如下:
ddd
def my_sum(x,y):
return x+y # return 30
print(my_sum(10,20))
运行结果如下:
30
练习:写一个函数,判断指定的年龄是否属于成年(返回结果)
def agelimit(a):
print('请输入a:')
age = input(a)
if age>=18:
print('恭喜你成年了')
def is_adult(age):
if age >= 18:
return True
else:
return False
if is_adult(10):
print('可以进网吧')
else:
print('未成年人禁止进入')
person = {'name':'余听','is_adult':is_adult(17)}
print(person)
运行结果如下:
未成年人禁止进入
{'name': '余听', 'is_adult': False}
3.函数的结束:
a.函数体执行完成
b.遇到return
测试函数的执行过程
def func2():
print('123')
return 10
print('321')
print(func2())
运行结果如下:
123
10
写一个函数,下载指定地址对应的数据
def download(url):
判断有没有网
if 没有网:
return None
写网络请求
请求数据
保存数据
练习:写一个函数,求1+2+3+...+n.,和不能大于10000
def limit_sum(*numbers):
number = input()
sum = 0
sum += number
if sum > 10000:
return None
else:
print(sum)
def my_sum2():
sum1 = 0
number = 1
while True:
if sum1 + number >= 1000:
return sum1,number-1
python中函数可以有多个返回值,在return后面返回多个值,每个值之间用逗号隔开,最终返回值是一个元祖。
sum1 +=number
number +=1
print(my_sum2())
运行结果如下:
(0, 999)