検索

ホームページ  >  に質問  >  本文

python 为什么调用函数会令引用计数+2

import sys
a = 11
init_cnt = sys.getrefcount(a) - 1

print "init", init_cnt
####init 22
def function(c):
    print 'in function, count: ', sys.getrefcount(c) - 1
    ####in function, count:  24
    print '函数调用,计数器增加', sys.getrefcount(c) - 1 - init_cnt
    ####函数调用,计数器增加 2
function(a)

黄舟黄舟2835日前610

全員に返信(1)返信します

  • 天蓬老师

    天蓬老师2017-04-18 10:34:22

    関数にパラメーターとして a を渡した後、それは 2 回参照されます:

    リーリー

    パラメータ a が関数オブジェクト内の 2 つの属性によって参照されていることがわかります。

    返事
    0
  • キャンセル返事