Irit Katriel <iritkatr...@yahoo.com> added the comment:
I agree with Serhiy that there needs to be a reason for adding this to a class constructor. In the case of int, this is to implement conversion - it's not accepting int, it's accepting any number (it would be weird of int(3.4) worked and int(3) didn't). Similarly, complex constructor accepts numbers. In the case of tuple, bytes, bytearray - the constructor accepts any iterable, again in order to implement type conversion. So it's not random - these constructors accept objects of the same type because they accept params of a more generic type, in order to provide type conversion functionality. What functionality would we gain from increasing the API surface of the UUID constructor as you suggest? ---------- nosy: +iritkatriel _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue32112> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com