MicroPython标准库
- array
- binascii(二进制/ASCII转换)
- [builtins -- 内置函数和异常](#builtins – 内置函数和异常)
- [cmath -- 复数的数学函数](#cmath – 复数的数学函数)
- [collections -- 集合和容器类型](#collections – 集合和容器类型)
- [errno -- 系统错误代码](#errno – 系统错误代码)
- [gc -- 控制垃圾收集器](#gc – 控制垃圾收集器)
- [hashlib -- 散列算法](#hashlib – 散列算法)
- [heapq -- 堆队列算法](#heapq – 堆队列算法)
- [io -- 输入/输出流](#io – 输入/输出流)
- [json -- JSON 编码和解码](#json – JSON 编码和解码)
- [math -- 数学函数](#math – 数学函数)
- [os -- 基本的"操作系统"服务](#os – 基本的“操作系统”服务)
- [random -- 生成随机数](#random – 生成随机数)
- [re -- 简单的正则表达式](#re – 简单的正则表达式)
- [select -- 等待一组流上的事件](#select – 等待一组流上的事件)
- [socket -- 网络插座模块](#socket – 网络插座模块)
- [ssl -- SSL/TLS 模块](#ssl – SSL/TLS 模块)
- [struct -- 打包和解包原始数据类型](#struct – 打包和解包原始数据类型)
- [sys -- 系统特定的功能](#sys – 系统特定的功能)
- [time -- 时间相关函数](#time – 时间相关函数)
- [uasyncio --- 异步 I/O 调度程序](#uasyncio — 异步 I/O 调度程序)
- [zlib -- zlib 解压](#zlib – zlib 解压)
- [_thread -- 多线程支持](#_thread – 多线程支持)
RP2040:
ESP32-CAM :
array
- array.array(typecode[, iterable]) :创建数组
- array.append(val) :添加数据
- array.extend(iterable) :扩展数组
- val = arr[5]: 获取指定下标数据值
- arr[5] = val: 赋值指定下标数据值
类型编码 | 数据类型 | 数据类型 | 字节长度 |
---|---|---|---|
'b' | singned char | int | 1 |
'B' | unsigned char | int | 1 |
'u' | Py_UNICODE | Unicode character | 2 |
'h' | signed short | int | 2 |
'H' | unsigned short | int | 2 |
'i' | signed int | int | 2 |
'I' | unsigned int | int | 2 |
'l' | signed long | int | 4 |
'L' | unsigned long | int | 4 |
'q' | singned long long | int | 8 |
'Q' | unsigned long long | int | 8 |
'f' | float | float | 4 |
'd' | double | float | 8 |
python
import array
arr1 = array.array('b', [11,12,13,14,15])
arr2 = array.array('b', [21,22,23,24,25])
arr3 = array.array('b')
print('arr1 type:', type(arr1), "len:", len(arr1), arr1)
print('arr2 type:', type(arr2), "len:", len(arr2), arr2)
print('arr3 type:', type(arr3), "len:", len(arr3), arr3)
arr3.append(31)
arr3.append(32)
arr3.append(33)
print('arr3:', arr3)
arr3.extend(arr1)
print('arr3 extend arr1:',arr3)
print('max:', max(arr3))
print('min:', min(arr3))
print(arr3[3])
arr3[2]=55
print(arr3[2])
binascii(二进制/ASCII转换)
-
binascii.hexlify(data[, sep])
将数据对象中的字节转换为十六进制表示。返回一个字节对象。如果提供了额外的参数sep,它将用作十六进制值之间的分隔符。
-
binascii.unhexlify(data)
将十六进制数据转换为二进制表示。返回字节字符串。(即 hexlify 的逆)
-
binascii.a2b_base64(data)
解码 base64 编码的数据,忽略输入中的无效字符。符合RFC 2045 s.6.8。返回一个字节对象。
-
binascii.b2a_base64(data)
以 base64 格式编码二进制数据,如RFC 3548。返回编码数据后跟换行符,作为字节对象。
python
import binascii
bs = bytes()
b = (b'0123456789abcdef')
print(type(bs), bs)
print(type(b), b)
h1 = binascii.hexlify(b)
print(type(h1), h1)
h2 = binascii.unhexlify(h1)
print(h2)
str1 = 'hello world!'
print(str1)
base64 = binascii.b2a_base64(str1) # 原数据转base64
print(base64)
str2 = binascii.a2b_base64(base64) # base64 转原数据
print(str2)