1. 程式人生 > >python模塊-json、pickle

python模塊-json、pickle

模塊 ads 時也 mps lis json處理 imp open str

json模塊

用於文件處理時的其他數據類型與js字符串之間轉換。在將其他數據類型轉換為js字符串時,首先將前者內部所有的單引號變為雙引號,再整體加上引號(單或雙)轉換為js字符串;在使用時再將js字符串還原為本來的數據。

兩對方法json.dumps()和json.loads(),json.dump()和json.load()

import json
l=[1,hello,{name:Alex}]
with open(new.txt,w) as f:
    l_str=json.dumps(l)  #將列表l轉換為js字符串
    f.write(l_str)  #將字符串寫入文本
print(l_str, type(l_str)) #輸出[1,"hello", {"name": "Alex"}] <class ‘str‘>,可以看見原列表中所有的單引號全部變成了雙引號 with open(new.txt,r) as f: l=f.read() print(l,json.loads(l),type(json.loads(l))) #輸出[1,"hello", {"name": "Alex"}] [1,‘hello‘, {‘name‘: ‘Alex‘}] <class ‘list‘>

上述最後一行可以看見,由於寫入時為js字符串,直接讀取時也為js字符串,即引號全部為雙引號,而json.loads()是將json處理過的字符串變成了原來的列表,並且處理過的雙引號全部變回了單引號

在上述文件中,轉換和寫操作l_str=json.dumps(l)和f.write(l_str)可以用一步json.dump(l,f)代替

在上述文件中,讀和轉換操作l=f.read()和json.loads(l)可以用一步json.load(f)代替

python模塊-json、pickle