函数:
格式:
def 函数名(形式参数1,形式参数2,...):
语句块
return 表达式(结果)
调用 函数名(实际参数1,实际参数2,...)
语句块:就是需要重复使用的代码
调用格式:
函数名(参数1,参数2,..)
1.函数名是需要调用的函数的函数名(名字必须一致)
2.函数名后跟(),()中放置需要传递给定义函数的参数(实际参数)
3.()可以是空参,即使是空参,()也不能省略
4.调用函数时,传入参数的个数,顺序需要与定义函数参数的个数,顺序一致
return:
1.用来返回一个结果/表达式,返回的值是用来告诉调用者的
2.return可以省略,省略就表示不需要返回结果,注意:如果没有写return,默认会执行return None
3.return可以用来终止函数,函数默认是执行完后自动终止,执行return后,return后的语句不会执行
函数的值传递:
可变类型(元组,列表)值传递时,只是把他们的内存地址传递,当在函数中元素发生改变时,本身的元素也会改变
默认值参数:
定义时可以在参数列表的后部(有存在几个默认值的情况)给参数设置默认值,例如: def function(name,age,sex="男",height="200")
不定长参数(可变长参数):
1.没有命名:
1).一个形式参数可以传入多个实际参数
2).用*表示的参数(约定俗成为*args),用来接收任意多个没有命名的参数,会自动将这多个变量封装成元组,并传递到函数中
3).如果没有参数,会是一个空的元组
最好将可变长参数放在参数后面
2.有命名:
1.用** 表示的参数(约定俗成为**kwargs),用来接收任意多个有命名的参数,会自动的将多个参数封装成字典,参数名作为
2.如果没有命名的参数传递,则会生成一个空的字典传递进来
匿名函数:
格式:lambda 形式参数1,形式参数2: 结果表达式
偏函数:
格式:import functools
函数名 = functools.partial(参数1,参数2)
参数:参数1--需要修改的函数名
参数2--需要设置的默认值
例子:
格式:
def 函数名(形式参数1,形式参数2,...):
语句块
return 表达式(结果)
调用 函数名(实际参数1,实际参数2,...)
语句块:就是需要重复使用的代码
调用格式:
函数名(参数1,参数2,..)
1.函数名是需要调用的函数的函数名(名字必须一致)
2.函数名后跟(),()中放置需要传递给定义函数的参数(实际参数)
3.()可以是空参,即使是空参,()也不能省略
4.调用函数时,传入参数的个数,顺序需要与定义函数参数的个数,顺序一致
return:
1.用来返回一个结果/表达式,返回的值是用来告诉调用者的
2.return可以省略,省略就表示不需要返回结果,注意:如果没有写return,默认会执行return None
3.return可以用来终止函数,函数默认是执行完后自动终止,执行return后,return后的语句不会执行
函数的值传递:
可变类型(元组,列表)值传递时,只是把他们的内存地址传递,当在函数中元素发生改变时,本身的元素也会改变
默认值参数:
定义时可以在参数列表的后部(有存在几个默认值的情况)给参数设置默认值,例如: def function(name,age,sex="男",height="200")
不定长参数(可变长参数):
1.没有命名:
1).一个形式参数可以传入多个实际参数
2).用*表示的参数(约定俗成为*args),用来接收任意多个没有命名的参数,会自动将这多个变量封装成元组,并传递到函数中
3).如果没有参数,会是一个空的元组
最好将可变长参数放在参数后面
2.有命名:
1.用** 表示的参数(约定俗成为**kwargs),用来接收任意多个有命名的参数,会自动的将多个参数封装成字典,参数名作为
2.如果没有命名的参数传递,则会生成一个空的字典传递进来
匿名函数:
格式:lambda 形式参数1,形式参数2: 结果表达式
例子:
lambda a,b:a+b
add = lambda a,b:a+b
print(add(1,2))
偏函数:
格式:import functools
函数名 = functools.partial(参数1,参数2)
参数:参数1--需要修改的函数名
参数2--需要设置的默认值
例子:
func = functools.partial(int,base=2)
print(func("1010"))
print(func("10"))