1
2
3
4
5 """
6 This module allows using the Python json module for parsing JSON data and
7 decoding strings in UTF-8 instead of Unicode, resulting in ability to use str functions (e.g. for sorting)
8 """
9
10
12 rv = []
13 for item in data:
14 if isinstance(item, unicode):
15 item = item.encode('utf-8')
16 elif isinstance(item, list):
17 item = decode_list(item)
18 elif isinstance(item, dict):
19 item = decode_dict(item)
20 rv.append(item)
21 return rv
22
23
25 rv = {}
26 for key, value in data.iteritems():
27 if isinstance(key, unicode):
28 key = key.encode('utf-8')
29 if isinstance(value, unicode):
30 value = value.encode('utf-8')
31 elif isinstance(value, list):
32 value = decode_list(value)
33 elif isinstance(value, dict):
34 value = decode_dict(value)
35 rv[key] = value
36 return rv
37