python中函数与函数式编程(二)

首先要明白为什么要用到返回值,返回值的作用就是为了分情况来处理下面的程序(个人见解总结)

1.函数返回值

def test1():
    pass
def test2():
    return 0
def test3():
    return 0,10,'hello',['a','c'],{'nihao':'hah'}

t1 = test1()
t2 = test2()
t3 = test3()

print(t1)
print(t2)
print(t3)

在这里插入图片描述
返回值总结:
(1)返回值个数为0,返回none
(2)返回值个数为1,返回object
(3)返回值个数>1,返回元组(tuple)

2.函数调用

test( )执行,()表示调用函数test,()内可以有参数也可以没有
实参和形参:
位置参数和关键字(标准调用:实参和形参位置一一对应,关键字调用:位置无需固定)
在这里插入图片描述

ps:即使想使用关键字和位置参数的时候,也要关键字一定要在位置参数的后面!!

3.默认参数

# 默认参数
def test(x,y=2):
    print(x)
    print(y)

# test(1)  默认输出1,2  默认参数非必须传递  用途:可以固定某些数值
test(1,3)

在这里插入图片描述

4.参数组

参数组的这部分主要是记住 * 和 ** 的用法, 表示接收不同的长度的关键字,并转换成元组,** 表示接收关键字并转换成字典,详细的用法见下*

(1)* 的用法

# 参数组

def test(*yanfeixu):
    print(yanfeixu)

test(1,2,3,4,5)  # *表示可以接收不定长度的参数组,并转换成元组




def test1(x,*yanfeixu):
    print(x)
    print(yanfeixu)

test1(1,2,12,32)

在这里插入图片描述

(2)** 的用法

def test2(**yanfeixu):      # **接收关键字并装换成字典
    print(yanfeixu)

test2(name="zhangsan",age=121)

def test3(sex,**yanfeixu):
    print(sex)
    print(yanfeixu)

test3('male',name="zhangsan",age=121)

在这里插入图片描述

小福利:高阶函数

变量可以指向函数,函数的参数能接收变量,那么一个函数就可以接收另一个函数作为参数,这种函数就称之为高阶函数。
在这里插入图片描述

9
posted @ 2018-10-19 10:56  南邮吴亦凡  阅读(211)  评论(0编辑  收藏  举报