我正在处理的原始问题在此处概述。我想问一个与原始问题相关的附加问题(关于 Python 引用计数)。
可以说我有以下脚本:
from bitarray import bitarray
from array import array
list1=[bitarray('00011'), bitarray('00010'), bitarray('11011')]
list2=[array('i',[0,0,0,0]),array('i',[1,1,1,1]),array('i',[2,2,2,2])]
def calculate(l1,l2):
result1=l1[0]&l1[1]&l1[2]
result2=l2[0][0]+l2[1][1]+l2[2][2]
return result1, result2
print calculate(list1,list2)
当我调用时,list1
任一列表中的引用计数list2
或任何对象是否会发生变化?calculate(list1,list2)
澄清一下:我并不是说在调用之前和之后引用计数是否相同calculate(list1,list2)
。我的意思是如果引用计数在执行期间的任何时候发生变化calculate(list1,list2)
。