From: Guido van Rossum Date: Tue, 8 May 2007 19:09:34 +0000 (+0000) Subject: repr(b"\0") should return b"\x00", not the (unusual) b"\0". X-Git-Tag: v3.0a1~994 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=57b93ad56d570c27bd3de3820b996352121c18e2;p=python repr(b"\0") should return b"\x00", not the (unusual) b"\0". --- diff --git a/Lib/test/test_bytes.py b/Lib/test/test_bytes.py index 102eb46528..ded049100e 100644 --- a/Lib/test/test_bytes.py +++ b/Lib/test/test_bytes.py @@ -73,8 +73,9 @@ class BytesTest(unittest.TestCase): def test_repr(self): self.assertEqual(repr(bytes()), "b''") - self.assertEqual(repr(bytes([0])), "b'\\0'") - self.assertEqual(repr(bytes([0, 1, 254, 255])), "b'\\0\\x01\\xfe\\xff'") + self.assertEqual(repr(bytes([0])), "b'\\x00'") + self.assertEqual(repr(bytes([0, 1, 254, 255])), + "b'\\x00\\x01\\xfe\\xff'") self.assertEqual(repr(bytes('abc')), "b'abc'") self.assertEqual(repr(bytes("'")), "b'\\''") diff --git a/Objects/bytesobject.c b/Objects/bytesobject.c index cb830e3cdb..3a707ac765 100644 --- a/Objects/bytesobject.c +++ b/Objects/bytesobject.c @@ -849,7 +849,7 @@ bytes_repr(PyBytesObject *self) else if (c == '\r') *p++ = '\\', *p++ = 'r'; else if (c == 0) - *p++ = '\\', *p++ = '0'; + *p++ = '\\', *p++ = 'x', *p++ = '0', *p++ = '0'; else if (c < ' ' || c >= 0x7f) { /* For performance, we don't want to call PyOS_snprintf here (extra layers of