python如何定义新对象
rt。我试验了下,python传递对象也是传递的是对象的引用。这样的话,如果把对象当作参数传入一个函数中,而在这个函数中如果把这个参数赋值给另一个对象,这样如果改变这两个对象中任意个的值,这两个对象都会改变。
我想问的是,如何在被调用的方法中定义一个新的对象,就是另起用一块内存地址。
测试代码如下:不知道大侠们了解了没
def testModifyPara(para01):
ret = {}
ret = para01
para01['aa'] = 'aaaa'
ret['bb'] = 'bbbb'
return ret
if __name__ == '__main__':
para = {}
print testModifyPara(para)
print para
打印结果为:
{'aa': 'aaaa', 'bb': 'bbbb'}
{'aa': 'aaaa', 'bb': 'bbbb'}
-------------------------------------------------------------------------
我的想法是在testModifyPara()中像java一样,new一个新的ret,就是给ret新分配一块内存地址,使得我改变ret的时候(ret['bb'] = 'bbbb'),para01不会被改变