New submission from Serhiy Storchaka: >>> import io >>> class F(io.FileIO): pass ... >>> f = F('/dev/null', 'r') >>> f <_io.FileIO name='/dev/null' mode='rb'> >>> class B(io.BufferedReader): pass ... >>> b = B(f) >>> b <B name='/dev/null'> >>> class T(io.TextIOBufferedReader): pass io.TextIOBase( io.TextIOWrapper( >>> class T(io.TextIOWrapper): pass ... >>> t = T(b) >>> t <_io.TextIOWrapper name='/dev/null' encoding='UTF-8'>
Expected results are "<__main__.F name='/dev/null' mode='rb'>", "<__main__.B name='/dev/null'>" and "<__main__.T name='/dev/null' encoding='UTF-8'>". Usually reprs of subclass instances substitute actual module and class names. ---------- components: Extension Modules, IO keywords: easy messages: 221476 nosy: benjamin.peterson, hynek, pitrou, serhiy.storchaka, stutzbach priority: normal severity: normal stage: needs patch status: open title: io class name are hardcoded in reprs type: behavior versions: Python 2.7, Python 3.3, Python 3.4 _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue21861> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com