I got the following json: {u\'a\': u\'aValue\', u\'b\': u\'bValue\', u\'c\': u\'cValue\'}
by doing request.json
in my python code. Now, I want to c
For python 2.x
import yaml
import json
json_data = yaml.load(json.dumps(request.json()))
Now this json_data can be used as a json and can have list of json as well.
You can use a list comprehension to encode all of the keys and values as ascii like this:
dict([(k.encode('ascii','ignore'), v.encode('ascii','ignore')) for k, v in dct.items()])
Note: There generally isn't much benefit to not having your data in unicode, so unless you have a specific reason not to have it in unicode, then I would leave it.
A library available in PyPi may be helpful, see: unidecode.
It is intended to transform European characters with diacriticals (accents) to their base ASCII characters, but it does just as well when the unicode character is already in the ASCII range.
from unicode import unidecode
def fUnUn(sOrU):
return unidecode(sOrU).encode('ascii') if type(sOrU) is unicode else sOrU
sASCII = fUnUn(u'ASCII')
{u'a': u'aValue', u'b': u'bValue', u'c': u'cValue'} is a dictionary which you are calling as unicode json. Now, in your language if you want a regular json from this then just do something like this:
x={u'a': u'aValue', u'b': u'bValue', u'c': u'cValue'}
y=json.dumps(x)
print y
The output will be {"a": "aValue", "c": "cValue", "b": "bValue"}