zoukankan      html  css  js  c++  java
  • python 读写json文件(dump, load),以及对json格式的数据处理(dumps, loads)

    JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于ECMAScript的一个子集。

    1、json.dumps()和json.loads()是json格式处理函数(可以这么理解,json是字符串)

    1. json.dumps()函数是将一个Python数据类型列表进行json格式的编码(可以这么理解,json.dumps()函数是将字典转化为字符串)
    2. json.loads()函数是将json格式数据转换为字典(可以这么理解,json.loads()函数是将字符串转化为字典)

    在json的编解码过程中,python 的原始类型与json类型会相互转换,具体的转化对照如下:

    Python 编码为 JSON 类型转换对应表:

    PythonJSON
    dict object
    list, tuple array
    str string
    int, float, int- & float-derived Enums number
    True true
    False false
    None null

    JSON 解码为 Python 类型转换对应表:

    JSONPython
    object dict
    array list
    string str
    number (int) int
    number (real) float
    true True
    false False
    null None

    2、json.dump()和json.load()主要用来读写json文件函数

    实例如下:

    import json,time
    # save data to json file
    def store(data):
        with open('data.json', 'w') as fw:
            # 将字典转化为字符串
            # json_str = json.dumps(data)
            # fw.write(json_str)
            # 上面两句等同于下面这句
            json.dump(data,fw)
    # load json data from file
    def load():
        with open('data.json','r') as f:
            data = json.load(f)
            return data
    
    
    if __name__ == "__main__":
        json_data = '{"login":[{"username":"aa","password":"001"},{"username":"bb","password":"002"}],"register":[{"username":"cc","password":"003"},{"username":"dd","password":"004"}]}'
        # 函数是将json格式数据转换为字典
        data = json.loads(json_data)
        store(data)
    
        data = load()
        print(data)

    总结:

    不带s的用于操作文件,带s的用于数据类型的转换。

  • 相关阅读:
    Alone
    vue父组件中调用子组件的方法
    常用CSS的布局问题;
    Flex语法和常用鼠标手势
    如何解决浮动元素高度塌陷---CSS
    Vue中使用 iview 之-踩坑日记
    路由懒加载---Vue Router
    <input type="file">如何实现自定义样式
    sticky -- position定位属性sticky值之粘性定位;
    Vue组件传值(三)之 深层嵌套组件传值
  • 原文地址:https://www.cnblogs.com/nancyzhu/p/8905749.html
Copyright © 2011-2022 走看看