编程语言
首页 > 编程语言> > MicroPython 库 —— 快速上手ujson

MicroPython 库 —— 快速上手ujson

作者:互联网

文章目录

MicroPython 库 —— 快速上手ujson

JSON基础介绍

1. 什么是Json?

2. 具体使用例子

2.1 JSON对象例子

JSON对象描述

{
    "motor": {
        "left": 100,
        "right": 20
    },
    "servo": {
        "servo_1": 90
    }
}

JSON对象语法说明

2.2 JSON对象数组

JSON数组描述

{
    "employees": [
        {
            "firstName": "Bill",
            "lastName": "Gates"
        },
        {
            "firstName": "George",
            "lastName": "Bush"
        },
        {
            "firstName": "Thomas",
            "lastName": "Carter"
        }
    ]
}

JSON数组语法说明

重点

ujson库

该模块允许Python对象和JSON数据格式之间的转换

>>> import ujson
>>> help(ujson)
object <module 'ujson'> is of type module
  __name__ -- ujson
  dump -- <function>
  dumps -- <function>
  load -- <function>
  loads -- <function>

这里有4个函数:

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

dumps —— 字典或者列表转换成json字符

例子1

# 导入模块
import ujson
# 构造字典
data = {
    'id': 1,
    'name': 'test1',
    'age': '1'
}

json_str1 = ujson.dumps(data)
print(type(json_str1),json_str1)

打印结果

>>> %Run -c $EDITOR_CONTENT
<class 'str'> {"name": "test1", "id": 1, "age": "1"}
>>> 

例子2

# 导入模块
import ujson

# 构造列表
data1 = [{
    "id": 1,
    "name": "test1",
    "age": "1"
}, {
    "id": 2,
    "name": "test2",
    "age": "2"
}]
# python列表类型转换为json字符串
json_str2 = ujson.dumps(data1)
print(type(json_str2),json_str2)

打印结果

>>> %Run -c $EDITOR_CONTENT
<class 'str'> [{"name": "test1", "id": 1, "age": "1"}, {"name": "test2", "id": 2, "age": "2"}]
>>>  
dump —— json字符写入文件

例子

# 导入模块
import ujson
import os

list = ['Apple', 'Huawei', 'selenium', 'java', 'python']

# 写入文件,json.txt文件最初是空白文件
with open('json.txt', 'w') as f:
    ujson.dump(list, f)

# 读取文件
with open('json.txt', 'r') as f:
    print(f.read())

打印结果

>>> %Run -c $EDITOR_CONTENT
["Apple", "Huawei", "selenium", "java", "python"]
>>> 

在这里插入图片描述

loads —— 将json字符串数据转换为字典或列表

例子1

# 导入模块
import ujson
# 构造字典
data = '''[{
    "id": 1,
    "name": "test1",
    "age": "1"
}, {
    "id": 2,
    "name": "test2",
    "age": "2"
}]'''
# json字符串转为python列表类型
json_str1 = ujson.loads(data)
print(type(json_str1),json_str1)
print(json_str1[0]['id'])
print(json_str1[0]['name'])
print(json_str1[0]['age'])

打印结果

>>> %Run -c $EDITOR_CONTENT
<class 'list'> [{'id': 1, 'name': 'test1', 'age': '1'}, {'id': 2, 'name': 'test2', 'age': '2'}]
1
test1
1
>>> 

例子2

# 导入模块
import ujson
# 构造字典
data = '''{
    "id": 1,
    "name": "test1",
    "age": "1"
}'''
# json字符串转为python列表类型
json_str1 = ujson.loads(data)
print(type(json_str1),json_str1)
print(json_str1['id'])
print(json_str1['name'])
print(json_str1['age'])

打印结果

>>> %Run -c $EDITOR_CONTENT
<class 'dict'> {'id': 1, 'name': 'test1', 'age': '1'}
1
test1
1
>>> 
load —— 将文件json数据转换为字典或列表

例子

# 导入模块
import ujson
import os

# 读取文件
with open('json.txt', 'r') as f:
    result = ujson.load(f)
    print(result)

打印结果

>>> %Run -c $EDITOR_CONTENT
['Apple', 'Huawei', 'selenium', 'java', 'python']
>>>  

本章内容相对比较简单易懂,不需要花费太多时间,希望各位同学可以拷贝一下源码去玩玩。

标签:MicroPython,name,ujson,id,age,json,上手,str1
来源: https://blog.csdn.net/weixin_44614230/article/details/122017400