函数
函数的编程分为三种编程方式:
面向对象编程 类 class
面向过程编程 过程 def
函数式编程 函数 def 函数式编程输入是确定的输出就是确定的
面向过程与面向函数的联系:面向函数是有返回值的过程。
def test(x,y): //x,y为形参 test(1,y)这里1表示默认参数,在调用过程中对默认参数赋值可有可无
print('x')
print('y')
test(1,2) //1,2为实参,这里表示位置参数
test(x=1,y=2) //这里表示关键字参数
test(1,y=2) //位置参数不能放到关键字参数后面
def test(*args) // 表示传递若干个参数,并以元组的形式打印出来 也可以def test(x,*args)
print(args)
def test(**kwargs) // 表示传递若干个参数,并以字典的形式打印出来 也可以def test(x,*args,**kwargs)
print(kwargs)
在*argv、**kwargv、默认参数、位置参数以及关键字参数传递混合使用过程中,遵从位置参数不能放到关键字参数后面的原则。
总的来说,默认参数的赋值可以放到任何部位,也可以在函数中调用函数。
局部变量只在函数中生效。
全局变量在整个程序中都生效。若要用局部变量更改全局变量,则需要在函数中声明变量 global 变量(不要在函数中改全局变量
而且不要在函数中用global定义全局变量),列表、字典等复杂的可以在函数中直接修改全部变量,而字符串这些简单的不可以修改。
高阶函数:把一个函数当做参数传递到另外一个函数中。 重点是函数名而不是函数
特点:一个函数名当做实参传递给另一个参数(在不修改被装饰函数源代码的条件下,添加新的功能);
返回值中包含函数(不修改函数的调用方式)。
浙公网安备 33010602011771号