python 函数递归一次增加一次变量_Python3_函数:可变长参数、全局变量和局部变量、向前引用、递归函数、匿名函数...

一、语法格式:

def test(x):

"解释函数的作用"

x += 1

return x

def:定义函数的关键字

test:函数名

():定义函数的形参

"":文档描述,定义函数的作用

x+=1:函数的代码块

return:定义返回值

当函数遇到一个return时整个函数结束

当指定了默认参数的时候,在调用函数的时候可以不指定参数

二、函数的参数:

1、形参:

在函数中定义的变量,其只有在被调用的时候才会被分配内存单元,在调用结束时释放分配的内存单元

2、实参:

在调研用函数的时候定义的常量、变量、表达式、函数等

3、例子:

def add(x,y):

res = x * y

return res

add = add(2,4)

在上面的例子中形参为add后面的x和y,实参为调用函数时的2和4;形参和实参的位置必须要一一对应

三、可变长参数:

可变长参数是指可以向函数的传递不定个数的参数;可变长参数的原则是位置参数必须在关键字参数之前

1、位置参数:

位置参数是和函数中的形参一一对应的,如:

def add(x,y):

res = x * y

return res

add(2,4)

在上面的代码中2和4对应函数中x和y,也就是x和y是位置参数

2、关键字参数:

关键字参数是指可以接受0个或多个实参的参数,如:

def test01(x, *args):

print(x)

print(args)

test01(1,2,3,4,5)

在上面的代码中x是位置参数,对应实参中的1;

而*args是一个关键字参数,对应实参中的2,3,4,5

3、*:

在函数的形参中*可接受字符串、数字、列表、元组、集合的数据类型;Python最后会将这些数据类型转化为元组。

例子:

def test01(x, *args):

print(x)

print(args)

test01(1,2,3,4,5)

运行结果:

1

(2, 3, 4, 5)

若传递的实参是一个可迭代的参数时需要加上一个*号,如:

def test01(x, *args):

print(x)

print(args)

test01(1, *[2,3,4])

运行结果:

1

(2, 3, 4)

4、**:

和*类似,不同的是**可接收的是键值对,最后都会转换为字典形式

例子:

def test02(x, **kwargs):

print(x)

print(kwargs)

test02(1, y

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值