0
点赞
收藏
分享

微信扫一扫

Python3开发 函数

书呆鱼 2022-04-07 阅读 39
python
1.普通参数def ada(x,y)      def add (×=4,y=5)
既可以接收位置传参又可以接收关键字传参的形参。

2.可变位管参数 def total (*args)
args会收集0个或任意个实参,收集成一个不可变的元组   *args *修饰的形参表示可变参数,为它可以提供若下个 剩余的
按位貴传参的实参,会被形参收集成元组,元组不可变
*args 称为 可变位置形参
可变参数本来就可以使用0个实参,所以不需要缺省值

3.可变关键字形参 def fn (**kwargs) keyword arguments
**是修饰符,修饰后面的标识符,习惯上使用kwargs
只能收集剩余的关键字实参

标识符可以是由字母、数字、组成就可以了,但是不能数字开头

4.keyword only 仅关键字形参
*args,之后出现的非可变形参
*, 出现的标识符一般都是keyword-only。除了**kwargs

5. positional-only 仅位置形参  3.8+
目前很少使用, 只有个别函数声明使用了

实参传参:
(1)按照位置
(2)关键字
可以混合使用,位置传参必须在关键字传参之前

在这里插入图片描述

参数解构只能用在函数调用时的那个括号中。
解开成 按位置传参

  • 在给函数提供实参的时候,可以在可迭代对象前使用 * 或者 ** 来进行结构的解构,提取出其中所有元素作为函数的实参
  • 使用 * 解构成位置传参
  • 使用 ** 解构成关键字传参
  • 提取出来的元素数目要和参数的要求匹配
举报

相关推荐

0 条评论