Nice solution wanted: Hide internal interfaces
andrea.crotti.0 at gmail.com
Mon Oct 29 17:41:57 CET 2012
2012/10/29 Johannes Bauer <dfnsonfsduifb at gmx.de>:
> Hi there,
> I'm currently looking for a good solution to the following problem: I
> have two classes A and B, which interact with each other and which
> interact with the user. Instances of B are always created by A.
> Now I want A to call some private methods of B and vice versa (i.e. what
> C++ "friends" are), but I want to make it hard for the user to call
> these private methods.
> Currently my ugly approach is this: I delare the internal methods
> private (hide from user). Then I have a function which gives me a
> dictionary of callbacks to the private functions of the other objects.
> This is in my opinion pretty ugly (but it works and does what I want).
> I'm pretty damn sure there's a nicer (prettier) solution out there, but
> I can't currently think of it. Do you have any hints?
> Best regards,
And how are you declaring methods private? Because there is no real
private attribute in Python, if you declare them with a starting "_"
they are still perfectly accessible..
More information about the Python-list