python中json.dumps()和str()的区别

结论,

dict 会自动把 " 转为 '
str 每个字符和dict的一样,只是类型变为str
json.dumps() :

  • 会把 ' 转为 "
  • 会把 True False 转为 true false
  • 会把 None 转为 null

因此,dumps后的才能loads,str的不能直接loads

import json

def main():
    mydict = {"str": "Bob", 'num': 26, 'flag':True,"null":None}
    mysrt = str(mydict)
    mydumps = json.dumps(mydict)
    print("mydict\t{}\t{}".format(type(mydict),mydict))
    print("mysrt\t{}\t{}".format(type(mysrt),mysrt))
    print("mydumps\t{}\t{}".format(type(mydumps),mydumps))
    print('mysrt==mydumps',mysrt==mydumps)

    # loads_str = json.loads(mysrt)
    loads_dumps = json.loads(mydumps)
    # print("loads_str\t{}\t{}".format(type(loads_str),loads_str))
    print("loads_dumps\t{}\t{}".format(type(loads_dumps),loads_dumps))
    # print('loads_str==loads_dumps',loads_str==loads_dumps)


if __name__ == "__main__":
    main()

结果:

在这里插入图片描述


版权声明:本文为qq_34451909原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。