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)

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

你可能感兴趣的:(python的函数修改外部传入的参数的问题)