pandas 中的 inplace 参数是如何工作的?

the inplace parameter in pandas how it works?

提问人:Mahmoud Noor 提问时间:12/3/2021 最后编辑:rudolfovicMahmoud Noor 更新时间:12/6/2021 访问量:84

问:

在 pandas 中,inplace 参数对引用进行修改,但我知道在 python 数据中是通过值而不是通过引用发送的,我想知道这是如何实现的或它是如何工作的

python-3.x pandas 可变性 按值调用

评论


答:

1赞 rudolfovic 12/3/2021 #1

Python 的参数传递模型既不是“按值传递”也不是“按引用传递”,而是“按对象引用传递”

当您将字典传递给函数并在函数中修改该字典时,更改将反映在字典的所有位置

然而,在这里我们处理的是一些不那么模棱两可的事情。当传递给对对象(无论是 a 还是 a)的方法调用时,我们只是说:更改当前对象而不是给我一个新对象。方法调用可以修改调用它们的实例的变量 - 这与语言是“按值调用”还是“按引用调用”无关。唯一会变得棘手的情况是,如果一种语言只有常量(think)而没有变量(think)——想想纯粹的函数式语言。然后,这是真的 - 您只能返回新对象,而不能修改任何旧对象。但是,在实践中,即使是最纯的语言,您也可以找到就地更新记录的方法。inplace=TruepandasSeriesDataFramevalvar