如何在Python中使用return

2,095 阅读3分钟

如果你想让函数按预期工作,每种编程语言都必须有一个返回语句。return关键字是为了退出一个函数并返回一个值。

函数是一系列的语句,向调用者返回一些值。它也可以由零个或更多的参数传递,这些参数可能会在执行主体中使用。

简而言之,一个函数 "向调用者返回一些值"。现在,让我们来理解返回语句。

Python 返回

return是一个内置的Python语句或关键字,用于结束一个函数调用的执行,并将结果(return关键字后面的表达式的值)"返回"给调用者。

return语句之后的语句不被执行。如果返回语句没有任何表达式,那么就返回None

请注意,Python 中的 return 语句不能在函数之外使用。

语法

def method():
    statements
    .
    .
    return [expression]

例子

def club():
    return 11 + 19


print(club())

输出

30

在这个例子中,我们定义了一个返回两个值之和的函数。这个例子返回一个值。

Python 返回多个值

在Python中要从一个函数中返回多个值,我们可以使用以下方式:

  1. 用逗号分隔返回多个值(tuple)
  2. 返回列表
  3. 返回集合
  4. 返回字典

通过分隔逗号返回各种值

要通过逗号分隔来返回多个值,请使用 return 语句。在 Python 中,你可以返回由逗号分隔的多个值。返回的值是以逗号分隔的Python元组

def club():
    return 11, 19, 21, 46


print(club())

输出结果

(11, 19, 21, 46)

从输出中,你可以看到这个函数返回了一个包含命令分隔的值的元组。

在Python中,逗号分隔的值被认为是没有括号的元组,除非是语法要求。

我们还可以验证其数据类型:

def club():
    return 11, 19, 21, 46


print(type(club()))

输出

<class 'tuple'>

你可以通过它的索引访问该项目:

def club():
    return 11, 19, 21, 46

data = club()
print(data[2])

输出

21

如果你试图访问不存在的索引,将会抛出一个异常:

def club():
    return 11, 19, 21, 46

data = club()
print(data[20])

输出

Traceback (most recent call last):
  File "app.py", line 5, in <module>
    print(data[20])
IndexError: tuple index out of range

我们得到了IndexError:元组索引超出了范围。

在 Python 中返回一个列表

要在 Python 中返回一个列表,使用 return 关键字,并在函数中写入你想返回的列表。Python 的 list就像使用方括号创建的元素数组。

列表与数组不同,因为它们可以包含各种类型的元素。此外,Python 中的列表与图元不同,因为它们是可变的:

def club():
    str = "AppDividend"
    x = 20
    return [str, x]


data = club()
print(data)

输出

['AppDividend', 20]

在这段代码中,我们可以看到,在 [ ] 的帮助下,我们有一个返回列表。

使用 [ ] 返回 list 而不是 tuple。

返回一个字典

要在 Python 中返回一个 Dictionary,使用 return 关键字,并在函数中写入你想返回的 Dictionary。 Python Dictionary类似于其它语言中的 hash 或 map。

我们可以使用dict()方法定义一个 Dictionary,然后根据值指定 key,我们将组成 Dictionary 并返回 Dictionary:

def club():
    dct = dict()
    dct['str'] = "AppDividend"
    dct['age'] = 3
    return dct


data = club()
print(data)

输出

{'str': 'AppDividend', 'age': 3}

你可以看到我们首先初始化了一个空的 Dictionary,然后将 key-value 对附加到 Dictionary 中。然后返回 Dictionary。

本教程就到此为止。