详解Python 函数参数解包

  • Post category:Python

Python 函数参数解包是一种非常便捷的方法,可以方便地将一个列表、元组或字典中的元素解包成多个独立的参数,以便于传递给函数,从而进行一些特殊的操作。本文将为大家介绍Python函数参数解包的使用方法。

解包列表或元组

语法

def fun(a, b, c):
    # 函数体
args = [1, 2, 3]
fun(*args)

其中 * 表示拆包操作符。

示例

def my_sum(a, b, c):
    return a + b + c

nums = [3, 4, 5]
print(my_sum(*nums))  # 12

# 结果为:12

在这个示例中,我们定义了一个求和的函数 my_sum,并将一个包含 3 个元素的列表 nums 作为参数传递给该函数,并使用拆包操作符 * 将其拆开,这样列表中的每个元素依次作为函数参数传递给 my_sum 函数,并得出结果 12。

解包字典

语法

def fun(a, b, c):
    # 函数体
kwargs = {'a': 1, 'b': 2, 'c': 3}
fun(**kwargs)

其中 ** 表示拆包操作符。

示例

def print_info(name, age, sex):
    print("Name:", name)
    print("Age:", age)
    print("Sex:", sex)

stu_info = {'name': 'Bob', 'age': 18, 'sex': 'male'}
print_info(**stu_info)

# 输出结果:
# Name: Bob
# Age: 18
# Sex: male

在这个示例中,我们定义了一个打印个人信息的函数 print_info,并将一个包含个人信息的字典 stu_info 作为参数传递给该函数,并使用拆包操作符 ** 将其拆开,这样字典中的每个键值对都作为函数的一个关键字参数传递给 print_info 函数,并顺序打印出该人员的各项信息。