有勇气的牛排博客

Python参数类型*args、**kwargs

有勇气的牛排 569 Python 2024-08-21 23:09:59

进群口令:博客

Python中args、kwargs 是什么

1 前言

*args**kwargs 是用于函数定义的两种特殊语法,用来处理可变数量的参数

  • args:用于将多个非关键字参数(positional arguments)作为一个元祖传递给args变量。
  • kwargs:会将任意数量的关键字参数,打包为字典传给kwargs变量。

通俗理解:

1、2个都用于接收任意数量参数。

2、args将参数转为元组(非关键字->直接传参数)。

3、kwargs将参数转为字典(关键字->用等号传递的那个)。

2 args 案例

def func(*args): print(args) # 输出:(1, 2) func(1, 2)

Python args 案例

3 kwargs 案例

def func(**kwargs): print(kwargs) # 输出:{'name': '有勇气的牛排', 'id': 1} func(name='有勇气的牛排', id=1)

Python kwargs 案例

4 args与kwargs同时使用

def func(*args, **kwargs): print(f"args: {args}") # 输出:args: (1, 2, 3) print(f"kwargs: {kwargs}") # 输出:kwargs: {'name': '有勇气的牛排', 'id': 1} func(1, 2, 3, name='有勇气的牛排', id=1)

Python args与kwargs同时使用案例

5 面试答题建议

*args**kwargs 是 Python中用于定义可变参数的方式:

  • *args 接收任意数量的位置参数。
  • **kwargs 接收任意数量的关键字参数。

它们常用语函数封装、装饰器、参数转发等灵活函数调用的场景。

评论区

×
×