Python-函数与函数式编程

 

一、函数定义

1、函数的定义格式

在Python中,函数的定义使用def语句、函数名、括号、括号中的参数和冒号:,然后,在缩进块中编写函数体,函数的返回值可以使用return进行返回。

例子:

  def my_abs(x): #定义函数my_abs
   print(x)
  return 0

 

说明:

  def : 定义的函数关键字

  my_abs:  定义的函数名称

  print(x):一定的函数代码块或程序的处理逻辑

  return 0: 定义的函数返回值,这里函数返回为0

注意: 函数式编程是有return的返回值,而没有renturn的返回值为面向过程编程。

 

2、函数的作用及优点

  代码重用,避免写重复的代码,提高代码的可用性。

  保持一致性,修改一处,所有代码块保持一致代码

  可扩展性,函数中可以随意增加函数的功能

  

 

 

二、函数调用

1、在函数定义之后,可以使用函数名、括号、及括号中的参数来调用定义的函数

例子:   def my_abs(x):

      print(x)
  return 0  
  my_abs(999) #函数调用


三、函数的返回值
  函数执行的结果一般用return语句将结果返回。
   注意: 当函数调用遇到return语句就会停止执行,并将函数的结果返回,也就是可以理解为return语句代表着函数执行过程结束。
  返回的值数等于0,返回None
  返回的值数量等于1;返回object(对象)
  返回的值数量大于1;返回tup1(元组)
  返回值的作用: 返回函数的执行结果,后面的代码根据函数的返回值来进行判断来做出不同的操作,比如:登录窗口,返回值为True的时候运行登录程序,
          当返回的值为False时,拒绝登录程序。



四、函数的参数
实参: 可以是常量、变量、函数、表达式等值,在函数被调用时,必须要有明确的值,最终程序需要将实参传递给形参,(通俗的说就是看得见的值)
形参:变量只有在被函数调用的时候才分配内存空间,函数调用结束时释放内存空间,其作用域只是在函数内有用(通俗的讲就是可以变动的变量)
例子:
    

 

2、位置参数、关键参数、默认参数、非固定参数(参数组)

位置参数: 根据所在的位置进行传参,通俗的讲就是按照顺序进行传参,形参和实参形成一一对应的关系

 

关键字参数: 通过参数指定的值就是关键字参数,而关键字参数必须放在位置参数后。

 

 

默认参数:  通过形参指定的参数,函数调用时不指定参数,默认就是形参指定的参数值,如指定了参数,就用形参指定的值。

 

非固定参数(参数组): 若你的函数在定义时不确定用户想传入多少个参数,就可以使用非固定参数 

 

 

 **kwargs: 会把多传入的参数变成一个dict形式(字典),可以理解为**kwargs接收实参中传入的多个关键字参数

 




五、局部变量和全局变量
局部变量: 在子程序(函数)中定义的变量,作用域为定义该变量的子程序。
全局变量: 在程序开始定义的变量为全局变量,作用域为整个程序
注意:当局部变量与全局变量同名时,子程序以内的局部变量起作用,其他区域全局变量起作用。

 默认情况下,元组、字典、数组等变量在局部区域可以更改全局变量。

 



posted @ 2019-05-05 00:11  jamie86  阅读(163)  评论(0)    收藏  举报