Python对象转换为json的方法步骤(python把对象转化为字符串)

  本篇文章为你整理了Python对象转换为json的方法步骤(python把对象转化为字符串)的详细内容,包含有python对象类型转换 python把对象转化为字符串 python 对象转数组 python把object转换成int Python对象转换为json的方法步骤,希望能帮助你了解 Python对象转换为json的方法步骤。

  Python中内置了json库,用起来超级方便,json现在以成为开发的必备。

  python对象到json字符串的转换规则:
 

  
dict: {name: jack, age: 15, email: jack@litets.com}
 

  json: {"name": "jack", "age": 15, "email": "jack@litets.com"}
 

  json转换为dict
 

  

 

 

  import json

  person_dict = json.loads({"name": "jack", "age": 15, "email": "jack@litets.com"})

  print(person dict:, person_dict)

  

 

  输出:

  person dict: {name: jack, age: 15, email: jack@litets.com}
 

  类对象转换为json
 

  

 

 

  import json

  class Person:

   def __init__(self, name, age, email):

   self.name = name

   self.age = age

   self.email = email

  
json.dumps() 不能直接传递一个对象实例否则回报 TypeError: Object of type Person is not JSON serializable 错误 为了避免这个错误,我们需要修改:

  

 

 

  import json

  class Person:

   def __init__(self, name, age, email):

   self.name = name

   self.age = age

   self.email = email

  # 将person转换为dict

  def convert2json(person):

   return {

   name: person.name,

   age: person.age,

   email: person.email

  person = Person(tom, 38, tom@litets.com)

  # 第二个参数传递转换函数,或者使用default=lambda o: o.__dict__

  person_json = json.dumps(person, default=convert2json)

  print(person json:, person_json)

  

 

  json转换为类对象
 

  

 

 

  import json

  class Person:

   def __init__(self, name, age, email):

   self.name = name

   self.age = age

   self.email = email

  
def convert2json(dict_json):

   return Person(dict_json[name], dict_json[age], dict_json[email])

  
person = json.loads({"name": "tom", "age": 38, "email": "tom@litets.com"}, object_hook=convert2json)

  print(person:, person)

  

 

  输出:

  person:
 

  loads函数只能将json转换为字典,需要我们自己转换为对象。

  dict/对象转换为json文件
 

  

 

 

  import

  person = {"name": "tom", "age": 38, "email": "tom@litets.com"}

  with open(person.json, w) as f:

   json.dump(person, f)

  

 

  当前目录下会多一个person.json文件,内容是:

  {"name": "tom", "age": 38, "email": "tom@litets.com"}
 

  将json文件转换为dict/对象
 

  

 

 

  import json

  with open(person.json, r) as f:

   print(json.load(f))

  

 

  输出:

  {name: tom, age: 38, email: tom@litets.com}
 

  以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持考高分网。

  以上就是Python对象转换为json的方法步骤(python把对象转化为字符串)的详细内容,想要了解更多 Python对象转换为json的方法步骤的内容,请持续关注盛行IT软件开发工作室。

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

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