It makes Python print the object representation in readable chars instead of the escaped string.
>>> from pprint import pprint >>> langs = [ ... 'Hello, world!', ... '你好,世界!', ... 'こんにちは世界', ... u'Hello, world!', ... u'你好,世界!', ... u'こんにちは世界' ... ] ...
Before:
>>> pprint(langs) ['Hello, world!', 'xe4xbdxa0xe5xa5xbdxefxbcx8cxe4xb8x96xe7x95x8cxefxbcx81', 'xe3x81x93xe3x82x93xe3x81xabxe3x81xa1xe3x81xafxe4xb8x96xe7x95x8c', u'Hello, world!', u'u4f60u597duff0cu4e16u754cuff01', u'u3053u3093u306bu3061u306fu4e16u754c']
After:
>>> import uniout >>> pprint(langs) ['Hello, world!', '你好,世界!', 'こんにちは世界', u'Hello, world!', u'你好,世界!', u'こんにちは世界']
You can install it via PyPI,
sudo pip install uniout
or download it manually.
- Switch to long-string syntax (
'''
or"""
) automatically.
- Fixed the issue with empty string.
- Make it still works for files.
- A better fix for the previous bug.
- Fixed the problem that Uniout can't be installed by PIP.
- Show the original string if the escaped string can't be decoded properly.
- Use better way to find string literals.
- Print more correct unescaped string representation.
- Fixed a bug when Uniout works with IPython.
Thanks for the pull requests #3 and #4 from @timtan, it now
- works well with IPython,
- and also supports stderr.