2

作为这篇文章的后续:

如何从 Python 中的函数返回多个值?

一个单独的问题:

作为初学者程序员,我被教导只从函数中返回一件事。

一个。退货不止一件有什么隐藏的问题吗?

湾。如果是这样,并且我想从一个长函数中返回 2 个列表(即不调用 2 个单独的类似函数),那么从列表中创建一个元组有什么问题吗?

谢谢

4

4 回答 4

6

如果返回两件事有意义,是的……返回两件事。

例如,如果您想根据某些条件拆分字符串,例如查找键/值对,您可能会调用split_string_to_get_key_pair()您希望它返回一个(key, value).

问题是,返回一个元组(多个返回值通常如何工作)返回一两件事?任何一种方式都可以提出论点,但只要返回的内容是一致的并记录在案,那么您就可以返回对您的程序有意义的内容

于 2013-09-05T06:26:33.960 回答
3

如果有意义,Python 鼓励返回多个值。去吧。

于 2013-09-05T06:24:00.427 回答
3

这个问题并不是真正特定于 Python 的,可能更适合Programmers.SE

无论如何,关于你的问题:

一个。如果您要返回的这些东西实际上是变相的单一东西,并且它们大部分时间会一起使用,则不会。例如,如果您请求某物的颜色,您很少只需要红色通道的值。因此,如果返回值足够简单,或者包装类没有多大意义,则只需返回一个元组。

湾。没有,正如@Amber 所指出的,这是 Python 中的一种常见做法。

于 2013-09-05T06:35:30.837 回答
3

如果你把这两个列表放到一个元组中,你实际上是在返回一件事。=D

于 2013-09-05T06:26:00.373 回答