diff options
author | Martin Panter <vadmium+py@gmail.com> | 2017-01-29 10:09:43 +0000 |
---|---|---|
committer | Martin Panter <vadmium+py@gmail.com> | 2017-01-29 10:09:43 +0000 |
commit | 6d1d733828b49eb03d45da81c6b8c6b849fbc5df (patch) | |
tree | b0b120d6c527fb8cf6e4a0f175556611673ad780 /Lib/string.py | |
parent | 357e8cdc9b1c5a99be9ade2b1070c38d50ddadc6 (diff) | |
parent | 23282e54fdd766945930006ab606641a2db37a4c (diff) | |
download | cpython-6d1d733828b49eb03d45da81c6b8c6b849fbc5df.tar.gz |
Issues #29349: Merge Py 2 fix 3.5
Diffstat (limited to 'Lib/string.py')
-rw-r--r-- | Lib/string.py | 11 |
1 files changed, 3 insertions, 8 deletions
diff --git a/Lib/string.py b/Lib/string.py index 89287c4c0a..c902007643 100644 --- a/Lib/string.py +++ b/Lib/string.py @@ -28,7 +28,7 @@ ascii_letters = ascii_lowercase + ascii_uppercase digits = '0123456789' hexdigits = digits + 'abcdef' + 'ABCDEF' octdigits = '01234567' -punctuation = """!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~""" +punctuation = r"""!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~""" printable = digits + ascii_letters + punctuation + whitespace # Functions which aren't available as string methods. @@ -116,10 +116,7 @@ class Template(metaclass=_TemplateMetaclass): # Check the most common path first. named = mo.group('named') or mo.group('braced') if named is not None: - val = mapping[named] - # We use this idiom instead of str() because the latter will - # fail if val is a Unicode containing non-ASCII characters. - return '%s' % (val,) + return str(mapping[named]) if mo.group('escaped') is not None: return self.delimiter if mo.group('invalid') is not None: @@ -146,9 +143,7 @@ class Template(metaclass=_TemplateMetaclass): named = mo.group('named') or mo.group('braced') if named is not None: try: - # We use this idiom instead of str() because the latter - # will fail if val is a Unicode containing non-ASCII - return '%s' % (mapping[named],) + return str(mapping[named]) except KeyError: return mo.group() if mo.group('escaped') is not None: |