New submission from Yves Müller:

I am trying to read json containing a UTF-8 string from a file. It works when 
running it from a shell with LANG=en_GB.utf8 set, but fails from the empty 
environment.

> python3 --version
Python 3.4.0
> cat test.json 
{ "test": "Ümläute" }
> env -u LANG python3 -c 'import json; json.load(open("test.json"))'
Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "/usr/lib/python3.4/json/__init__.py", line 265, in load
    return loads(fp.read(),
  File "/usr/lib/python3.4/encodings/ascii.py", line 26, in decode
    return codecs.ascii_decode(input, self.errors)[0]
UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 11: 
ordinal not in range(128)
> > env LANG=en_GB.UTF-8 python3 -c 'import json; 
> > print(json.load(open("test.json")))'
{'test': 'Ümläute'}

----------
components: Unicode
messages: 250175
nosy: ezio.melotti, haypo, yves
priority: normal
severity: normal
status: open
title: Reading unicode json string fails depending on LANG env
versions: Python 3.4

_______________________________________
Python tracker <rep...@bugs.python.org>
<http://bugs.python.org/issue25028>
_______________________________________
_______________________________________________
Python-bugs-list mailing list
Unsubscribe: 
https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com

Reply via email to