【问题标题】:how pass-by-reference and pass-by-value works in python [duplicate]python中的引用传递和值传递如何工作[重复]
【发布时间】:2021-06-01 16:12:47
【问题描述】:

我以为我理解了 python 的传递引用和传递值处理...... 谁能解释一下python中的传递引用和传递值有什么区别

【问题讨论】:

  • 许多可变容器(即列表、集合、类对象等)默认是通过引用传递的,这意味着它们是浅拷贝的,因此修改浅拷贝会修改原版的。值传递意味着值被复制,但结构不链接到原始变量。您可以通过深拷贝在列表或类似结构上实现按值传递,但有时您可以非常有效地利用浅拷贝。我不想完全回答这个问题,所以这是我的 2 美分,可以让您在等待完整答案时开始。
  • Python 总是按值传递,而不是通过引用。人们只是对此感到困惑,因为 Python 中的 all 值都是对对象的引用。尽管如此,这些引用是按值传递的。

标签: python


【解决方案1】:

Python 也没有。 Python确实“通过赋值传递”。 Python 名称是总是对对象的引用。当您传递一个对象时,接收函数的参数名称会获得另一个对该对象的引用。

【讨论】:

    猜你喜欢
    • 2013-12-02
    • 2023-03-07
    • 1970-01-01
    • 2018-05-25
    • 2011-05-29
    • 2016-01-06
    • 1970-01-01
    • 2014-09-10
    相关资源
    最近更新 更多