鱼C论坛

 找回密码
 立即注册
查看: 1243|回复: 0

[技术交流] python json

[复制链接]
发表于 2021-8-20 09:25:08 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 大马强 于 2021-8-20 09:24 编辑

一、什么是json
    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。
    它基于JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999的一个子集。
    JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。
    这些特性使JSON成为理想的数据交换语言。                                                                                                                                  -----来源百度

其实就是字典和字符串之间的转换,在python要额外导入json库 -> import json

二、常用的方法
    1.json.loads
        json.load 将数据转换成json格式, 字符串->字典
    2.json.domps
        json.load 将json转换格式成其他格式,字典->字符串
    3.json.load
        json.load 从文件中读取字符串,变成字典格式
    4.json.domp
        json.domp 将字典格式变成字符串写入文件中

三、代码案例

  1. # 设置数据
  2. data = {
  3.     'cursor': "-1",
  4.     "offset": "0",
  5.     "orderType": "1",
  6.     "pageNo": "1",
  7.     "pageSize": "20",
  8.     "rid": "R_SO_4_1855995767",
  9.     "threadId": "R_SO_4_1855995767"
  10. }
  11. # 将原数据data打印
  12. print("康康原数据的类型和内容")
  13. print("data的类型", type(data))
  14. print("data的内容", data)

  15. """
  16. 输出
  17. 康康原数据的类型和内容
  18. data的类型 <class 'dict'>
  19. data的内容 {'cursor': '-1', 'offset': '0', 'orderType': '1', 'pageNo': '1', 'pageSize': '20', 'rid': 'R_SO_4_1855995767', 'threadId': 'R_SO_4_1855995767'}
  20. """
  21. # 使用json.dumps()方法,将字典转换成字符串
  22. print("\n使用json.dumps()方法,将字典转换成字符串")
  23. a = json.dumps(data)
  24. print("a的类型", type(a))
  25. print("a的内容", a)
  26. """
  27. 输出
  28. 使用json.dumps()方法,将字典转换成字符串
  29. a的类型 <class 'str'>
  30. a的内容 {"cursor": "-1", "offset": "0", "orderType": "1", "pageNo": "1", "pageSize": "20", "rid": "R_SO_4_1855995767", "threadId": "R_SO_4_1855995767"}
  31. """
  32. # 使用json.loads()方法,将字符串转换成字典
  33. print("\n使用json.loads()方法,将字符串转换成字典")
  34. b = json.loads(a)
  35. print("b的类型", type(b))
  36. print("b的内容", b)

  37. """
  38. 输出
  39. 使用json.loads()方法,将字符串转换成字典
  40. b的类型 <class 'dict'>
  41. b的内容 {'cursor': '-1', 'offset': '0', 'orderType': '1', 'pageNo': '1', 'pageSize': '20', 'rid': 'R_SO_4_1855995767', 'threadId': 'R_SO_4_1855995767'}
  42. """
  43. # 使用json.dump()方法,将字典转换成字符串,写入文件 json.txt
  44. print("\n使用json.dump()方法,将字典转换成字符串,写入文件 json.txt")
  45. with open("json.txt", "w") as fp:
  46.     json.dump(b, fp)
  47. with open("json.txt") as fp:
  48.     str_1 = fp.read()
  49.     print("str_1的类型", type(str_1))
  50.     print("str_1的内容", str_1)
  51. """
  52. 输出
  53. 使用json.dump()方法,将字典转换成字符串,写入文件 json.txt
  54. str_1的类型 <class 'str'>
  55. str_1的内容 {"cursor": "-1", "offset": "0", "orderType": "1", "pageNo": "1", "pageSize": "20", "rid": "R_SO_4_1855995767", "threadId": "R_SO_4_1855995767"}
  56. """
  57. # 使用json.load()方法,从文件 json.txt 中读取字符串,变成字典格式
  58. print("\n使用json.load()方法,从文件 json.txt 中读取字符串,变成字典格式")
  59. with open("json.txt") as fp:
  60.     str_2 = json.load(fp)
  61.     print("str_2的类型", type(str_2))
  62.     print("str_2的内容", str_2)
  63. """
  64. 输出
  65. 使用json.load()方法,从文件 json.txt 中读取字符串,变成字典格式
  66. str_2的类型 <class 'dict'>
  67. str_2的内容 {'cursor': '-1', 'offset': '0', 'orderType': '1', 'pageNo': '1', 'pageSize': '20', 'rid': 'R_SO_4_1855995767', 'threadId': 'R_SO_4_1855995767'}
  68. """
复制代码

四、学习中,待完善
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-3 12:26

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表