python的函数修改外部传入的参数的问题

def test(df):
    #函数里面修改df会影响传入的参数,但是直接修改了df的指针则不会影响外面的参数。
    df = pd.DataFrame()
def test2(df):
    df.loc[0,'a'] = 'A'

df = pd.DataFrame({'a':[1,2],'b':[55,56]})
test2(df)
print(df)
'''
输出
   a   b
0  A  55
1  2  56
'''

df = pd.DataFrame({'a':[1,2],'b':[55,56]})
#这样是产生一个副本,dft是副本,对其修改不会影响原值
dft = df[['a']]
dft.loc[:,'a'] = 'a'
print(df)
'''
输出
   a   b
0  1  55
1  2  56
'''

补充自

python的函数修改外部传入的参数的问题_little little wang的博客-CSDN博客_python 函数修改函数外的参数

你可能感兴趣的:(python,pandas)