24

假设我有两个Python函数,Function 1Function 2

函数 1将调用函数 2,参数是大数据(例如,包含 10 万个元素的字典)。

我想知道在Function 1中调用Function 2是否有任何性能差异,这意味着我需要传递大数据参数,而在Function 1中直接实现Function 2,这意味着我不需要传递大数据参数.

谢谢。

PS:我认为关键问题是Python如何通过值或引用(指针)传递参数?

编辑:这似乎是一个令人困惑的问题。如何通过引用传递变量?是一个很好的答案。

4

2 回答 2

23

Python 按值传递对对象的引用。术语是有争议的和丑陋的,但应该没有真正的性能差异。

查看这些答案,了解您可能想要的所有详细信息(希望如此)。

于 2013-05-09T22:35:51.370 回答
6

python如何“通过”的术语是我不想进入的恶性辩论。但实际上在堆栈上传递的是一个引用。因此,您的任何一个选项都不会产生很大的内存成本。

于 2013-05-09T22:36:42.707 回答