相关疑难解决方法(0)

python pandas dataframe,是值传递还是传递引用

如果我将数据帧传递给函数并在函数内修改它,它是按值传递还是按引用传递?

我运行以下代码

a = pd.DataFrame({'a':[1,2], 'b':[3,4]})
def letgo(df):
    df = df.drop('b',axis=1)
letgo(a)
Run Code Online (Sandbox Code Playgroud)

a函数调用后,值不会改变.这是否意味着它是传值?

我也试过以下

xx = np.array([[1,2], [3,4]])
def letgo2(x):
    x[1,1] = 100
def letgo3(x):
    x = np.array([[3,3],[3,3]])
Run Code Online (Sandbox Code Playgroud)

事实证明letgo2()确实发生了变化xxletgo3()没有变化.为什么会这样?

python pass-by-reference pass-by-value pandas

58
推荐指数
4
解决办法
4万
查看次数

标签 统计

pandas ×1

pass-by-reference ×1

pass-by-value ×1

python ×1