Skip to content
Go back

Python:プライベートなメンバー

· Updated:
  • そもそものところ、Pythonはvisibilityを持たない
    • とはいえ、それでも、やりようはある
  • アンダースコア1つで始まるメンバーは、プライベートであることを示す
    • 慣例的なものなので、インタプリタは特別なことをしない
    • import *でインポートされない、など一部例外はあるが
  • アンダースコア2つで始まるメンバーは、マングリングされる
    • _<class name>__<member name>に改められるので、元の名前からは隠される
    • 結局、変更先の名前でアクセスできるので、本当のプライベートではない