函数调用中的Python不可变类型

我有一个返回元组的sqlalchemy查询。我将这个元组传递给一个函数,并且由于它是一个不可变类型,所以在被调用函数中创建了一个新的元组实例。函数调用中的Python不可变类型

python如何处理内存管理?是创建的元组的完整副本,还是使用了一些巧妙的“拷贝写/零拷贝”功能?

对我来说,问题在于这些原始元组可能会消耗大量内存,并且只需调用一个函数对它们进行一些处理,Python将有效地将内存消耗加倍。

除了在线编写代码之外,我该如何避免这种低效?

回答:

当你调用一个函数时,只是元组的引用被传递,而不是副本。它不可变的事实并不意味着它将被复制到一个函数调用中,只是你不能修改它。

回答:

Python按值传递对象的引用。所以你不必担心它。

以上是 函数调用中的Python不可变类型 的全部内容, 来源链接: utcz.com/qa/257141.html

回到顶部