Calling dunder methods manually
Rustom Mody
rustompmody at gmail.com
Thu Apr 13 02:18:47 EDT 2017
On Thursday, April 13, 2017 at 11:00:03 AM UTC+5:30, Steven D'Aprano wrote:
> Should you call dunder methods (Double leading and trailing UNDERscores)
> manually? For example:
>
>
> my_number.__add__(another_number)
>
>
> The short answer is:
>
> NO! In general, you shouldn't do it.
>
>
> Guido recently commented:
>
> I agree that one shouldn't call __init__ manually (and in fact Python
> always reserves the right to have "undefined" behavior when you
> define or use dunder names other than documented).
>
>
> so unless documented as safe to use manually, you should assume that it
> is not.
>
>
> https://github.com/python/typing/issues/241#issuecomment-292694838
>
>
>
> This-Public-Service-Announcement-Brought-To-You-By-MyPy-ly y'rs,
>
>
>
>
> --
> Steve
I believe it was ChrisA who gave a pithy summary of the situation:
Dont CALL dunders
But its fine to DEFINE them
More information about the Python-list
mailing list