2010-05-03 51 views

回答

2

Firebug適用於JavaScript。在「腳本」調試器的'監視'選項卡上,您可以打開範圍鏈列表查看每個父級範圍。

Python可以從語言本身父範圍看當地人,如果你抓住一個代碼對象,但它處理嵌套範圍的方式意味着,只有實際使用的範圍變量綁定:

>>> def a(): 
...  def b(): 
...   print v1 
...  v1= 1 
...  v2= 2 
...  return b 

>>> f= a() 
>>> f.func_code.co_freevars 
('v1',) 
>>> f.func_closure 
(<cell at 0x7fb601274da8: int object at ...>,) 
>>> f.func_closure[0].cell_contents 
1 

雖然在父範圍中定義了v1v2,但實際僅關閉了v1

相關問題