使用Python編碼 解碼JSON物件

2021-08-15 21:06:50 字數 2552 閱讀 5081

測試版本為python2.7

import json

pobj =

print "type=%s content=%s"%(type(pobj), pobj)

jsonstr = json.dumps(pobj) #編碼

print "type=%s content=%s"%(type(jsonstr), jsonstr)

obj= json.loads(jsonstr) #解碼

print "type=%s content=%s"%(type(obj), obj)

執行結果如下:

type=content=

type=content=

type=content=

參考python原始碼中的注釋,編碼結果如下圖

+-------------------+---------------+

| python | json |

+***************====+***************+

| dict | object |

+-------------------+---------------+

| list, tuple | array |

+-------------------+---------------+

| str, unicode | string |

+-------------------+---------------+

| int, long, float | number |

+-------------------+---------------+

| true | true |

+-------------------+---------------+

| false | false |

+-------------------+---------------+

| none | null |

+-------------------+---------------+

解碼結果如下圖:

+---------------+-------------------+

| json | python |

+***************+***************====+

| object | dict |

+---------------+-------------------+

| array | list |

+---------------+-------------------+

| string | unicode |

+---------------+-------------------+

| number (int) | int, long |

+---------------+-------------------+

| number (real) | float |

+---------------+-------------------+

| true | true |

+---------------+-------------------+

| false | false |

+---------------+-------------------+

| null | none |

+---------------+-------------------+

在解碼的過程中遇到了一些問題:

import json

a = ''

#b = '' 編譯異常

c = ""

d = ""

e = ''''''

f = ''''''

g = ""

obj = json.loads(g)

print "type=%s content=%s" % (type(obj), obj)

debug結果如圖

無論最外層使用單引號、雙引號還是三引號,解析器解析後都會變為單引號,只要內外層引號不重複即可,否則內層引號前將新增\\導致解析錯誤

python 編碼解碼

一種編碼想要轉成另一種編碼,需要先解碼成萬國碼 unicode,然後再從unicode轉成其他編碼。例如gbk格式想要轉成utf 8,需要先按照 gbk 的格式 decode 成 unicode,再從 unicode 格式 encode 成utf 8 python3預設使用utf 8編碼,故不用宣告...

編碼 解碼 python

之前一直對python檔案中編碼解碼糊里糊塗,今天看到一篇文章,覺得把我講的有點明白了。寫個心得吧。1 編碼解碼是怎麼一回事?python 裡面的編碼和解碼也就是 unicode 和 str 這兩種形式的相互轉化。編碼是 unicode str,相反的,解碼就是 str unicode。str形式,...

使用python對url編碼解碼

對url進行編碼和解碼,python提供了很方便的介面進行呼叫。1.urllib.quote string safe 對字串進行編碼。引數 safe 指定了不需要編碼的字元 2.urllib.unquote string 對字串進行解碼 3.urllib.quote plus string safe...