2-3day01函数的返回值

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)

你可能感兴趣的:(2-3day01函数的返回值)