Python——函数

概念

1.函数定义

def <函数名> (<参数列表>):
<函数体>


2.函数的返回值
‣定义函数时不需要声明函数的返回值类型;
‣ 函数返回值类型与return语句返回的表达式类型一致;
‣没有return语句时函数的返回值都为None,即返回空值;
‣ 可以返回元组类型,类似返回多个值。

3.全局变量与局部变量
‣ 局部变量是指在函数内部定义的普通变量,仅在函数内部有
效,函数执行结束,局部变量就会被删除;
‣全局变量一般在函数之外定义,通常没有缩进,在程序执行
的全程有效;

4.全局变量的声明:
‣在函数内部定义全局变量必须使用关键字global;
‣ 如果一个变量已在函数外定义,在函数内需要为这个变量赋
值,可以在函数内使用global关键字将其声明为全局变量;
‣如果一个变量在函数外没有定义,在函数内部同样也可以使
用global关键字直接将一个变量定义为全局变量,该函数执行
后,将增加一个新的全局变量;

5.标识符解析的LEGB法则:
‣Python引用变量的顺序依次为局部作用域、嵌套作用域、
全局作用域和内置作用域。这就是所谓的LEGB法则;
‣ 函数内部声明的标识符具有局部作用域,其优先级最高;
‣嵌套作用域也是在函数内部,它和局部作用域是相对的,
嵌套作用域相对于更上层的函数而言是局部作用域,相对于
它内部的函数则是嵌套作用域;
‣ 全局变量具有全局作用域;
‣系统内固定模块里定义的标识符具有内置作用域。

6函数式编程:那些接受函数作为参数的函数或者把函数作为返回结果的函数叫高阶函数(Higher-order function)。函数式编
程就是指这种高度抽象的编程范式。


 

7.lambda表达式://lambda表达式用来创建一个匿名函数,因此匿名函数又叫lambda
函数。其语法格式如下:
<函数名> = lambda <参数列表>:<表达式>

//lambda函数与正常函数是一样的,其等价于下面的形式:
def <函数名> (<参数列表>):
  return <表达式>

 

 

 

lambda表达式以及sort的使用

 

 

 

独特性

1.前向引用://Python中不允许在函数未声明之前对其进行引用或调用,但下
边这段代码是正确的

2.参数值的传递与修改://特殊的情况下实参的值是有可能在函数内部被修改。

//为了保证原始列表的安全,可以把列表的切片作为实参传
递给函数

3.参数的按名称传递://Python允许指定参数的名称

4.参数的默认值:
‣Python允许给函数的参数指定默认值。

5.可变数量参数:
‣Python中函数可以接受非固定数目的参数;
‣ 一种是在参数名前加1个*;
‣一种是在参数名前加2个*。

//可接受多个关键字参数,并把实参以字典的形式保存,p是一个字典,键为参数名字值为参数值

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值