Python の参照渡しが途切れるパターン

Python が「値渡し」か「参照渡し」かを調べると、オブジェクトなので全て参照渡しという記事があったり、オブジェクトの型によるという記事があったりマチマチですが

配列等のオブジェクトが「参照渡し」で、それ以外のint等の単純な型が「値渡し」みたいです

が、渡した先で配列を再構築させたりすると、参照先が変更されて参照が途切れてしまうパターン

  1. def test(a):  
  2.     # a = {'key': 'value'} ←これをやると新たに a へオブジェクトが生成されて参照が切れてしまう  
  3.     a.clear()  
  4.     a['key'] = 'value'  
  5.     return  
  6.   
  7. d = {'default''zero'}  
  8. print(d)  
  9. test(d)  
  10. print(d)  

コメント