Naoki INADA <songofaca...@gmail.com> added the comment: This issue is caused by compile() behavior.
Following sample is in codepage 932. >>> 'あ' '\x82\xa0' # OK - 'あ' is '\x82\xa0' in cp932 >>> u'あ' u'\u3042' # OK - u'あ' is '\u3042' in UCS-2 compile as byte string. >>> c = compile("'あ'", 'test', 'single') >>> exec c '\x82\xa0' # OK >>> c = compile("u'あ'", 'test', 'single') >>> exec c u'\x82\xa0' # NG!!! compile as unicode string. >>> c = compile(u"'あ'", 'test', 'single') >>> exec c '\xe3\x81\x82' # NG!!! >>> c = compile(u"u'あ'", 'test', 'single') >>> exec c u'\u3042' # OK compile as byte string with pep 0263 >>> c = compile("# coding: mbcs\n'あ'", 'test', 'single') >>> exec c '\x82\xa0' # OK >>> c = compile("# coding: mbcs\nu'あ'", 'test', 'single') >>> exec c u'\u3042' # OK ---------- nosy: +naoki _______________________________________ Python tracker <rep...@bugs.python.org> <http://bugs.python.org/issue1542677> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: http://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com