Python函数返回值

1.函数的多返回值

复杂业务情况,函数可以有多个返回值,类型也不限制。

语法是return 返回值1,返回值2,……,返回值n

def get_user_info():
    name = "Alice"
    age = 25
    email = "alice@example.com"
    return name, age, email  # 自动打包成元组
 
# 调用函数
result = get_user_info()
print(result)        # ('Alice', 25, 'alice@example.com')
print(type(result))  # <class 'tuple'>
 
##通过多个变量接收
name,age,email = get_user_info()
print(name,age,email)  # Alice 25 alice@example.com

返回元组

def get_coordinates():
    return (100, 200)  # 显式返回元组
 
x, y = get_coordinates()
print(f"坐标: ({x}, {y})")  # 坐标: (100, 200)

返回列表

def get_statistics(numbers):
    if not numbers:
        return []
    minimum = min(numbers)
    maximum = max(numbers)
    average = sum(numbers) / len(numbers)
    return [minimum, maximum, average]
 
min_val, max_val, avg_val = get_statistics([1, 2, 3, 4, 5])
print(f"最小值: {min_val}, 最大值: {max_val}, 平均值: {avg_val}")

返回字典

def analyze_text(text):
    words = text.split()
    characters = len(text)
    word_count = len(words)
    return {
        'word_count': word_count,
        'character_count': characters,
        'words': words
    }
 
result = analyze_text("Hello world from Python")
print(result)
# {'word_count': 4, 'character_count': 22, 'words': ['Hello', 'world', 'from', 'Python']}

2.函数作为返回值

Python支持使用函数作为其他函数的返回值

def test(bol):
    if bol:
        return add
    else:
        return sub
 
def add(a, b):
    return a + b
 
def sub(a, b):
    return a - b
 
b1 = test(True)
print(b1,b1(1,2)) # <function add at 0x0000020CF8C55120> 3
b2 = test(False)
print(b2,b2(1,2))  # <function sub at 0x000001E317194C20> -1
© 版权声明
THE END
如果内容对您有所帮助,就支持一下吧!
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容