python的引用传递
python没有像C++的指针操作,不能自己指定值传递或者引用传递。
python在创建类的时候,默认使用的是引用传递。例如以下代码:
1 | def test(): |
最后输出的结果为
1 | [3, 2, 2] |
可以看出,像 posn 这种数组,无论是从一个类中读取,还是用来初始化另一个类,默认的都是引用传递。
如果希望使用值传递,可以类似如下操作,比如对 class B 进行改动
1 | class B: |
此时最终输出结果为:
1 | [3, 2, 2] |
评论
python没有像C++的指针操作,不能自己指定值传递或者引用传递。
python在创建类的时候,默认使用的是引用传递。例如以下代码:
1 | def test(): |
最后输出的结果为
1 | [3, 2, 2] |
可以看出,像 posn 这种数组,无论是从一个类中读取,还是用来初始化另一个类,默认的都是引用传递。
如果希望使用值传递,可以类似如下操作,比如对 class B 进行改动
1 | class B: |
此时最终输出结果为:
1 | [3, 2, 2] |