首页 编程教程正文

json 的简单应用

piaodoo 编程教程 2020-02-22 22:07:10 1055 0 python教程

本文来源吾爱破解论坛

今天做爬虫时的一点盲区 :字符串, 字典,写到同一个文件中。难以利用!
比如这样的数据:
str = “hi,budy. i like 52pojie!”
dirt = {“陈墨”:["男",“22”]}

一、保存到txt文件
       [Python] 纯文本查看 复制代码

with open("text.txt","w") as f:        f.write(str)
        #write()只能保存string
        f.write(str(dirt))


这样读出来,怎么读都是字符串。dirt难以利用。

二、保存到json数据,json.load 和 json.dump的使用
     [Python] 纯文本查看 复制代码
 with open( "a.json", "w") as f:         json.dump(str,f)
         json.dump(dirt,f)

     读取时使用json。dump(),这样会产生错误,一个是字符串,一个是字典。一起读数据数据类型不统一。
    那就分开读,也就是第三种方式:
三、,json.load 和 json.dump+json.loads()的使用
     [Python] 纯文本查看 复制代码
import json


def  read_json():
      with open("a.json", "r") as f:
          #每一行为一个列表的元素,各行独立
          data = f.readlines()
          for  dat in data:
              #去掉行后的空白,换行或者回车
              dat = dat.rstrip()
              #利用json.loads()恢复每一行的保存前数据类型,
              dir = json.loads(dat)
              #打印数据类型
              print(type(dir))
              print(dir)

def write_json():
     with open( "a.json", "w") as f:
         str = [1,2,5,3,4,5]
         json.dump(str,f)
         #每行后换行,保证每条数据相互独立。
         f.write("\n")
         str  ={11:22,33:44}
         json.dump(str,f)
         f.write("\n")
         str = "hello budy!"
         json.dump(str,f)
     #这样会产生比较多的空间浪费。每行有可能不到一半,

if  __name__ == "__main__":
    write_json()
    read_json()



这样做,以我目前的水平来说,方便了很多,保存的数据很方便就可以按照他原来的数据类型去使用。但是产生的空间浪费也很多,
比如一行100个字节,可能就用了10个字节。

版权声明:

本站所有资源均为站长或网友整理自互联网或站长购买自互联网,站长无法分辨资源版权出自何处,所以不承担任何版权以及其他问题带来的法律责任,如有侵权或者其他问题请联系站长删除!站长QQ754403226 谢谢。

有关影视版权:本站只供百度云网盘资源,版权均属于影片公司所有,请在下载后24小时删除,切勿用于商业用途。本站所有资源信息均从互联网搜索而来,本站不对显示的内容承担责任,如您认为本站页面信息侵犯了您的权益,请附上版权证明邮件告知【754403226@qq.com】,在收到邮件后72小时内删除。本文链接:https://www.piaodoo.com/7588.html

搜索