欢迎访问宙启技术站
智能推送

传参和返回值在Python函数中的使用方法

发布时间:2023-06-03 18:48:12

在Python中,函数是一种可以重复使用的代码块,它可以接收输入数据,处理这些数据并返回结果。为了使函数尽可能的通用化,Python提供了传参和返回值的方式。

本文将介绍Python函数中传参和返回值的使用方法。具体内容分为以下几部分:传参、返回值及实例分析。

一、传参

函数的传参是指,通过参数向函数中传递数据。

Python中的函数可以接受多个参数,产生不同的结果,而这些参数可以是必选参数、默认参数、可变参数、关键字参数。

1. 必选参数

必选参数是指在调用函数时,必须按规定的参数顺序,给所有参数进行赋值。

示例:

def add(x, y):
    return x + y

print(add(1, 2))

解释:

定义了一个add函数,其中包含了x和y两个参数,将x和y两个参数进行相加。在调用add函数时,必须按顺序分别赋值给x和y,例如1赋值给x,2赋值给y,最终返回结果3。

2. 默认参数

默认参数是指函数中可以有一些默认的参数,如果在调用函数时没有传入参数值,则使用默认值。

示例:

def add(x, y=1):
    return x + y

print(add(1))

解释:

定义了一个add函数,其中包含了x和y两个参数,将x和y两个参数进行相加。在调用add函数时,只给了x传值,y因为有默认值1,所以可以不传值。最终返回结果2。

?

3. 可变参数

可变参数是指函数传入的参数数量不确定,可以是任意多个,用特定的符号来表明。

示例:

def add(*values):
    result = 0
    for value in values:
        result += value
    return result

print(add(1, 2, 3))

解释:

定义了一个add函数,其中使用可变参数来接收所有传入的参数,并使用for循环遍历一遍全部的参数。最终返回结果为6。

4. 关键字参数

关键字参数是指函数中可以有多个参数,每个参数都有一个关键字,调用函数时需要指定参数关键字,可以按照任意顺序传入这些参数。

示例:

def person(name, age, **other):
    info = {'name': name, 'age': age}
    for key, value in other.items():
        info[key] = value
    return info

print(person('Alec', 25, city='Shanghai', job='Developer'))

解释:

定义了一个person函数,其中包含了三个参数,name和age是必需要传入的,其他参数可以传任意个将其封装成字典形式返回。最终输出结果为:{'name': 'Alec', 'age': 25, 'city': 'Shanghai', 'job': 'Developer'}。

二、返回值

函数的返回值是指,函数的执行结果将返回给函数调用者。

在Python中,函数返回值的形式可以是任意的对象,例如数字、字符串、列表、元组、字典等。

示例:

def apply_discount(price, discount):
    return price * (1 - discount)

print(apply_discount(100, 0.1))

解释:

定义了一个apply_discount函数,其中有两个参数price和discount,传入这两个参数后,函数将discount当成折扣率,计算出打折后的价格,并将计算结果返回。最终输出结果为90。

三、实例分析

示例:

def print_info(name, gender='male', **others):
    info = {'name': name, 'gender': gender}
    for key, value in others.items():
        info[key] = value
    for key, value in info.items():
        print('{}: {}'.format(key, value))

print_info('Alec', age=25, job='Developer')

输出结果:

name: Alec
gender: male
age: 25
job: Developer

解释:

定义了一个print_info函数,其中包含了三个参数,name是必传参数,gender有默认值'male',其他参数可以传任意个,传递后将根据关键字封装成字典形式,最后根据字典中的键值对进行输出。

在调用print_info函数时,只传了必传参数name和关键字参数age、job,因为性别有默认值,所以不用传参。函数内部将所有传参进行打包,最终输出结果为:name: Alec,gender: male,age: 25,job: Developer。

总结:

在Python中,函数的传参和返回值是使用频率最高的语法结构之一。合理的传参可以让函数更加的通用化,方便代码的复用;而准确的返回值可以让调用者更好地了解函数的执行结果。这些都是编写高质量Python程序的重要组成部分。