json python 字段读取,python dict写入文件

  json python 字段读取,python dict写入文件

  本文主要介绍python如何读取和存储dict()和。json格式文件,有很好的参考价值。希望对大家有帮助。

  00-1010读取和存储dict()和。json格式文件读取。json格式化文件并将数据保存到字典中。在命令行上输出字典时json文件乱码将字符串数据转换为字典数据,并将字典数据写入json文件

  

目录

 

  

读取和存储dict()与.json格式文件

 

  数据文件:hg.json

  { 商家名称 3360 真滋味港式粥火锅(工体店),评分 3360 27.0 ,地址 3360 ,在工人体育场东路2号中国红街3号楼2楼,人均消费 3360 174,评论数 3360 2307} {评分 3360 26.2 ,地址 3360 ,广顺南街路16号望京火锅,人均

  对于以上数据,可以通过以下方法将json编码的字符串转换成python数据结构dict:

  # -*-编码: utf-8 -*-

  导入json

  导入编解码器

  数据=[]

  带有codecs.open(hg.json , r , utf-8 )作为f:

  对于f:中的线路

  dic=json.loads(行)

  数据追加

  print(json.dumps(dic,indent=4,ensure _ ascii=False,encoding=utf-8 ))

  

读取.json格式文件并将数据保存到字典中

 

  Dic={ 商家名称 : 京哥老灶火锅(望京新世界店),评分 3360 26.2,地址 3360 望京广顺南街路16号火锅,人均消费 3360 105,评论数 3360 1387}

  带有codecs.open(hg.json , a , utf-8 )作为outf:

  json.dump(dic,outf,确保_ascii=False)

  outf.write(n )

  

保存字典数据到.json文件中

 

  如果字典数据中有中文,打印dic不能正常显示中文。您可以使用以下方法来打印格式字典数据:

  Dic={ 北京 3360 [446,208.7,11万],天津 3360 [454.2,219.8,12万],上海 3360 [498.6,319.7,31万]。

  print(json.dumps(dic,ensure _ ascii=False,encoding=utf-8 ,indent=4))

  

在命令行中输出字典时的乱码问题

 

  两种转换方法

  user={name : LiHua ,性别 : 男,年龄 : 18}

  dic1=eval(用户)

  exec(dic2= user)

  补充

  一般来说,json解码会从提供的数据中创建一个字典或列表。如果要创建其他类型的对象,可以为json.loads()方法提供object_pairs_hook或object_hook参数。下面的例子说明了我们应该如何将json数据解码成OrderedDict(有序字典),这样就可以保持数据的顺序不变。

  s={name:ACME , SHARES:50, PRICE:490}

  从集合导入订单直接

  data=json.load(s,object_pairs_hook=OrderedDict)

  数据

  OrderedDict([(name , ACME ),( shares ,50),( price ,490)]

  

将字符串数据转化为字典数据

 

  现在要获取一个医学网站的数据并最终转换成dict类型,就需要将数据写入JSON文件,方便后期数据的使用。

  带开(。/medical.json , w ,encoding=utf-8 )作为fp:

  json.dump(data,fp)

  但是最终的数据是这样的:

  它应该是一个正常的中文字符串,但它是ascii编码的。因此,在转储方法中添加了一个guarantee _ ASCII参数。原因是dump()方法将字典转换为字符串,默认情况下unicode编码会以ASCII编码的方式输入到字符串中。

  带开(。/medical.json , w ,encoding=utf-8 )作为fp:

  json.dump(data,fp,ensure _ ascii=False)

  以上个人经验,希望给你一个参考,也希望你能支持盛行的IT软件开发工作室。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: