python simplejsonモジュール浅谈
表示方法:
{"programmers":[
{"firstName":"Brett","lastName":"McLaughlin","email":"aaaa"},
{"firstName":"Jason","lastName":"Hunter","email":"bbbb"},
{"firstName":"Elliotte","lastName":"Harold","email":"cccc"}
],
"authors":[
{"firstName":"Isaac","lastName":"Asimov","genre":"sciencefiction"},
{"firstName":"Tad","lastName":"Williams","genre":"fantasy"},
{"firstName":"Frank","lastName":"Peretti","genre":"christianfiction"}
]}
HOWTO-UNICODE:
unicode (code point), 16 00 00.
PYTHON ,basestring unicode str
unicode , (0-255),str 8 。
unicode encode str;str decode unicode。 utf-8
:
>>> u" ".encode('utf-8')
'\xe4\xb8\xad\xe5\x9b\xbd' # unicode str
>>> '\xe4\xb8\xad\xe5\x9b\xbd'.decode('utf-8')
u'\u4e2d\u56fd' # str unicode
8 , unicode , ; unicode , 8 。
unicode , 。
, 。 ,
。 , ; 。
, (JSON) ; , (JSON) , 。
HOWTO-UNICODE , , , 。 , 。
、simplejson
simplejson json ( ), pypi , 。 python json , ( )。 python library JSON , , , 。 , , 。
, , 。 , 。 , , **kwargs ;
simplejson.dump(obj, fp, **kwargs): python ( JSON )
simplejson.dumps(obj, **kwargs): python (JSON )
simplejson.load(fp, **kwargs): ( JSON ) python
simplejson.loads(s, **kwargs): ( JSON ) python
class simplejson.JSONDecoder:load/loads , JSON python
class simplejson.JSONEncoder:dump/dumps , python JSON
, ,dump , , , unicode str , python JSON 。 ,load , , , str unicode , JSON python 。
JSON Python :
JSON
Python 2
Python 3
object
dict
dict
array
list
list
string
unicode
str
number (int)
int, long
int
number (real)
float
float
true
True
True
false
False
False
null
None
None
, :
#coding:utf-8
import simplejson as json
#simplejson.dump(**kwargs)
fp = open('./text.json', 'w+')
json.dump([1,2], fp) ## python ,
fp.seek(0)
print "----dump----
", u' dump python JSON , :
', fp.read()
print
fp.close()
#simplejson.dumps(**kwargs)
r_dumps = json.dumps({" obj":[1,2], "obj2":[3,4]}) # python ,
print "----dumps----
", u' dumps python JSON , :
', r_dumps
print
#simplejson.load(**kwargs)
# json , JSONDecoderError
fp = open('./text.json', 'r')
r_load = json.load(fp) # python
print "----load----
", u" load JSON , python , :", type(r_load)
print
#simplejson.loads(**kwargs)
# json , JSONDecoderError
# python
r_loads = json.loads('''{"programmers":[
{"firstName":"Brett","lastName":"McLaughlin","email":"aaaa"},
{"firstName":"Jason","lastName":"Hunter","email":"bbbb"},
{"firstName":"Elliotte","lastName":"Harold","email":"cccc"}
],
"authors":[
{"firstName":"Isaac","lastName":"Asimov","genre":"sciencefiction"},
{"firstName":"Tad","lastName":"Williams","genre":"fantasy"},
{"firstName":"Frank","lastName":"Peretti","genre":"christianfiction"}
]}''')
print "----loads----
", u" loads JSON , python , :", type(r_loads)
print
:
----dump----
dump python JSON , :
[1, 2]
----dumps----
dumps python JSON , :
{"obj2": [3, 4], "\u4e2d\u56fdobj": [1, 2]}
----load----
load JSON , python , : <type 'list'>
----loads----
loads JSON , python , : <type 'dict'>
・