python函数 - 13 函数的返回值(return)

函数的返回值

1.函数的返回值:

定义: 函数的返回值就是函数调用表达式的值/也是return关键字后的表达式的值.

(1)没有return的函数

def func1():
    print('123')
func1()   #>>>123   
# 这个就是函数调用表达式的值,python中所有函数调用表达式都有值(也就是说所有的函数都有返回值,返回值就是return后面的值.).

a = func1()   #>>>123   有返回值说明把func1的值赋给a
print('函数的值:',a)   #>>>函数的值: None  (因为函数中没有return,没有把值返回给a)
# 总结:如果函数没有return,那么函数的返回值就是None

# 相反举例:
def func1():
    # print('123')
    return 123
print(func1())  #>>>123
a = func1()   #>>>123   
print('函数的值:',a)   #>>>123  (因为return把函数值返回给了a)

(2)有return的函数

我们通过举例一目了然--->例如: 写一个函数计算多个数的和,并且把结果返回

def sum_1(*numbers):  #  * 表示传入的参数不确定有多少个
    sum = 0
    for x in numbers:
        sum += x
    return sum      #将sum交给函数调用者.
a = sum_1(1, 2, 3)   #sum_1(1, 2, 3)执行完后返回6,然后把6赋给a
print(a)    #>>>6

快速练习1: 获取两个数的差

def diff_1(num1,num2):
    diff = num1 - num2
    return diff
print(diff_1(10, 2))   #>>>8

总结1: 函数中的return与print的区别:

return:在定义函数时从函数中返回一个函数的返回值,终止函数的执行,函数中return以下的代码不再执行.

print():是把结果打印出来.返回结果值为 None

2.函数结束的标志

(1)没有return的时候,函数体全部执行完成,函数就结束

# (1)没有return的时候,函数体全部执行完成,函数就结束
def print_info():
    print('hello')
    print('hanbo')
print('你好啊')
print_info()       #函数以hanbo结束

(2)如果函数有return,则return后面的不将执行

def print_num():
    print('1111')
    print('aaaa')
    print('cccc')
    return(100)
    print('********')   #return后面的执行不到
aa = print_num()  #>>>1111 aaaa cccc
print(aa)       #>>>100

总结2: a.函数中的return与循环中的break相似,只要遇到return关键字,函数就结束.

b.可以使用return给函数返回结果

c.遇到return提前结束函数

快速练习2:写一个函数,计算列表里面的数的和,但是如果计算的和超过20就终止运算.(只实现这个功能,不考虑其他的)

def sum_2(list_2):
    sum_3 = 0
    for num in list_2:
        # print(num)
        sum_3 += num
        if sum_3 > 20:
            return sum_3 - num
    return sum_3
list_1 = [1, 2, 3, 10, 15, 16, 22]
print(sum_2(list_1))   #>>>16

猜你喜欢

转载自blog.csdn.net/hanbo6/article/details/80355340
今日推荐