From: Raymond Hettinger Date: Sat, 15 Nov 2014 18:58:58 +0000 (-0800) Subject: Issue #22824: Simplify reprlib output format for empty arrays X-Git-Tag: v3.5.0a1~479 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=a34cd0c781d8e6581fdb4927560f81b594e29f1d;p=python Issue #22824: Simplify reprlib output format for empty arrays --- diff --git a/Lib/reprlib.py b/Lib/reprlib.py index 5eb5ca3526..ecbd2cc472 100644 --- a/Lib/reprlib.py +++ b/Lib/reprlib.py @@ -83,6 +83,8 @@ class Repr: return self._repr_iterable(x, level, '[', ']', self.maxlist) def repr_array(self, x, level): + if not x: + return "array('%s')" % x.typecode header = "array('%s', [" % x.typecode return self._repr_iterable(x, level, header, '])', self.maxarray) diff --git a/Lib/test/test_reprlib.py b/Lib/test/test_reprlib.py index 83f38cdc40..a51c4d7523 100644 --- a/Lib/test/test_reprlib.py +++ b/Lib/test/test_reprlib.py @@ -94,7 +94,7 @@ class ReprTests(unittest.TestCase): eq(r(d), "{'alice': 1, 'arthur': 1, 'bob': 2, 'charles': 3, ...}") # array.array after 5. - eq(r(array('i')), "array('i', [])") + eq(r(array('i')), "array('i')") eq(r(array('i', [1])), "array('i', [1])") eq(r(array('i', [1, 2])), "array('i', [1, 2])") eq(r(array('i', [1, 2, 3])), "array('i', [1, 2, 3])") diff --git a/Misc/NEWS b/Misc/NEWS index 69ccd2ae12..b7fd7ad409 100644 --- a/Misc/NEWS +++ b/Misc/NEWS @@ -209,6 +209,9 @@ Library - Issue #22824: Updated reprlib output format for sets to use set literals. Patch contributed by Berker Peksag. +- Issue #22824: Updated reprlib output format for arrays to display empty + arrays without an unnecessary empty list. Suggested by Serhiy Storchaka. + - Issue #22406: Fixed the uu_codec codec incorrectly ported to 3.x. Based on patch by Martin Panter.