1. 程式人生 > >23. 23. Python   Json轉換

23. 23. Python   Json轉換

python json

JSON ==> Javascript Object Notation

AJAX 就是一種 key:value 的形式

json有四種方法:

json.loads

json.dumps

理解:加s的是用來處理字符串的

json.load

json.dump

理解:不加s的是用來處理文件的


load 或者 loads

意思:把json轉換成其他對象,字符串或者文件相關的。


dump 或者 dumps

意思:把其他對象或者格式,轉換成json格式

1.字符串和json之間的轉換

舉例1:把python字典的格式轉換成json字符串格式

>>> a = dict(name=‘linan‘,age=‘22‘,message=‘yes‘)
>>> print a
{‘message‘: ‘yes‘, ‘age‘: ‘22‘, ‘name‘: ‘linan‘}
>>> print type(a)
<type ‘dict‘>
>>> import json
>>> b=json.dumps(a)
>>> print b
{"message": "yes", "age": "22", "name": "linan"}
>>> print type(b)
<type ‘str‘>

print a 和 print b 雖然一樣,但是格式已經改變


https://www.json.cn/ 這個網站支持json解析


舉例2:將字符串轉換成字典

>>> c = json.loads(b)
>>> print c
{u‘message‘: u‘yes‘, u‘age‘: u‘22‘, u‘name‘: u‘linan‘}
>>> print type(c)
<type ‘dict‘>


2.文件和json之間的轉換

load 肯定是從文件中搞出來json數據,轉換成json數據

dump 就是把json數據寫入到文件中


將字符串轉換成json格式寫入到文件中

import json
jsonData=‘‘‘{"a":1,"b":2,"c":3,"d":4,"e":5}‘‘‘    ##字符串文件內寫成三引號或者單引號
with open(‘a.txt‘ ,‘w‘) as f:
    json.dump(jsonData, f)

結果

a.txt 文件內容如下:

"{\"a\":1,\"b\":2,\"c\":3,\"d\":4,\"e\":5}"

所以,json.dump()可以將json數據直接寫入到文件中。


將json格式的文件內容轉換成字符串

with open(‘a.txt‘ ,‘r‘) as fr:    
    m = json.load(fr)
    print (m)
    print (type(m))

結果

{"a":1,"b":2,"c":3,"d":4,"e":5}

<type ‘unicode‘>

所以,json.load()吧文件內容轉換成unicode數據類型返回


本文出自 “筆記空間” 博客,請務必保留此出處http://286577399.blog.51cto.com/10467610/1981382

23. 23. Python Json轉換