json.dump json.load與檔案讀寫操作
阿新 • • 發佈:2018-11-03
一.寫檔案
info={"name":"李小龍",'age':66,'love':"cat"}
fp=open('testdict1.txt','w+',encoding='utf-8')
fp.write(info)
ls=list('1234567890')
# print(ls)
fp=open('test.txt','w+')
# # json.dump(ls,fp)
fp.write(ls)
錯誤原因:列表和字典不能直接寫入檔案
solution:用json.dump
改寫:
ls=list('1234567890') # print(ls) fp=open('test.txt','w+') json.dump(ls,fp)
改寫:
info={"name":"李小龍",'age':66,'love':"cat"}
fp=open('testdict1.txt','w+',encoding='utf-8')
json.dump(info,fp)
success
但是:中文亂碼
解決方法:
呈現:
二.讀取檔案
fp=open('test.txt','r+')
l=fp.read()
print(l)
print(type(l))
fp=open('testdict1.txt','r+') dict=fp.read() print(dict) print(type(dict))
讀取出來都是字串
解決:
fp=open('testdict1.txt','r+')
dict=json.load(fp)
print(dict)
print(type(dict))
三.tips
info={"name":"李小龍",'age':66,'love':"cat"} fp=open('testdict1.txt','w+',encoding='utf-8') fp.write(json.dumps(info,ensure_ascii=False)) fp=open('testdict1.txt','r+') dict=json.load(fp) print(dict) print(type(dict)) # <class 'dict'>