X-Git-Url: https://vcs.fsf.org/?p=rainbowstream.git;a=blobdiff_plain;f=rainbowstream%2Fpy3patch.py;h=153d10df737957063078e125dcb3777e7d46d9b6;hp=604298411069fd7f6c0a678f09928c24c38ba004;hb=2a857ef419adf7fa8e7866189df76ee111166a20;hpb=fb835f1e803418a4cdd9a4fe76c518eef28d64cf diff --git a/rainbowstream/py3patch.py b/rainbowstream/py3patch.py index 6042984..153d10d 100644 --- a/rainbowstream/py3patch.py +++ b/rainbowstream/py3patch.py @@ -10,15 +10,21 @@ except: from io import StringIO, BytesIO # HTMLParser module - -try: +if sys.version[0] == "2": from HTMLParser import HTMLParser -except: +else: from html.parser import HTMLParser +unescape = HTMLParser().unescape +# According to https://github.com/python/cpython/blob/master/Lib/html/parser.py#L547 , +# in python 3.5 maybe I should use +# from html import unescape +# but it is a far-future story:) -# raw_input and map functiion behaviour -if sys.version[0] == "3": +# raw_input and map function behaviour +if sys.version[0] == "2": + lmap = lambda f, a: map(f, a) + unc = lambda x: x.decode('utf-8') +else: raw_input = input lmap = lambda f, a: list(map(f, a)) -else: - lmap = lambda f, a: map(f, a) + unc = lambda x: x