python关于入参中,传入的是指针还是引用

偶然看到别人的代码,发现有的会传入参数之后,做一次copy,试验一下,关于入参中,传入的是指针还是引用
先说自己的结论:
1.如果传入的是简单的类型,那么传入应该是引用的数值,
2.假如传入的是df这种类型,那么传入的是指针,
3.你在函数所做的修改仍然会改变原有的df,大家函数内修改复杂类型的变量最好还是copy一下!

 1 import pandas as pd
 2 def qqq(a,b):
 3     a.loc[1,1] = 9999
 4     b = 88888
 5     del a
 6     del b
 7 
 8 if __name__ == '__main__':
 9     aaa = pd.DataFrame([[1,2,3],[4,5,6]])
10     bbb = 123000
11     qqq(aaa, bbb)
12     print('aaa:\n',aaa,'\n')
13     print('bbb:',bbb)

输出:

1 aaa:
2    0     1  2
3 0  1     2  3
4 1  4  9999  6 
5 
6 bbb: 123000

 

posted @ 2019-06-25 13:56  Clownszz  阅读(2407)  评论(1编辑  收藏  举报