Python

Python Private変数/Private関数を呼び出す

変数名、関数名の前にクラス名の先頭に「_」を付けた文字列を呼び出すとアクセスできる。使用は推奨されない。

サンプルコード

class SampleClass:
    
    __private_value = 0

    def __private_func(self):
        print("__private_func")


s = SampleClass()

# print(s.__private_value)
# AttributeError: 'SampleClass' object has no attribute '__private_value'
s._SampleClass__private_value = 42
print(s._SampleClass__private_value) # 42

# s.__private_func()
# AttributeError: 'SampleClass' object has no attribute '__private_func'
s._SampleClass__private_func() # __private_func