...Když si někde vytvořím _my_private, tak by v code review mělo být nad slunce jasné, že když někdo napíše neco._my_private, že je něco asi špatně.
Bude to v code review stačit? Co interpret, ví o tom?
Ano, tohle by mohl interpret zachytit a poskytnout varovani. V praxi to zachyti lint.
~ $ cat xx.py
class Cls(object):
def __init__(self):
self.__var = 1
if __name__ == '__main__':
INS = Cls()
print INS._Cls__var
~ $ pylint xx.py
Using config file /data/data/com.termux/files/home/.pylintrc
************* Module xx
R: 1, 0: Too few public methods (0/2) (too-few-public-methods)
E: 7,10: Instance of 'Cls' has no '_Cls__var' member (no-member)
W: 7,10: Access to a protected member _Cls__var of a client class (protected-access)
--------------------------------------------------------------------
Your code has been rated at -1.67/10 (previous run: -1.67/10, +0.00)
~ $ python2 xx.py
1