struct – 操纵 c 风格的数据
该模块实现了相应 CPython 模块的一个子集,如下所述。有关更多信息,请参阅原始 CPython 文档:struct。
支持的大小/字节顺序前缀:@, <, >, !.
支持的格式代码:b, B, x, h, H, i, I, l, L, q, Q,
s, P, f, d (后 2 取决于浮点支持)。
在这些板上可用
-  8086 Commander
 -  @sarfata shIRtty
 -  ARAMCON Badge 2019
 -  ARAMCON2 Badge
 -  ATMegaZero ESP32-S2
 -  Adafruit BLM Badge
 -  Adafruit CLUE nRF52840 Express
 -  Adafruit Circuit Playground Bluefruit
 -  Adafruit Circuit Playground Express 4-H
 -  Adafruit CircuitPlayground Express
 -  Adafruit CircuitPlayground Express with Crickit libraries
 -  Adafruit CircuitPlayground Express with displayio
 -  Adafruit EdgeBadge
 -  Adafruit Feather Bluefruit Sense
 -  Adafruit Feather M0 Adalogger
 -  Adafruit Feather M0 Basic
 -  Adafruit Feather M0 Express
 -  Adafruit Feather M0 Express with Crickit libraries
 -  Adafruit Feather M0 RFM69
 -  Adafruit Feather M0 RFM9x
 -  Adafruit Feather M4 CAN
 -  Adafruit Feather M4 Express
 -  Adafruit Feather MIMXRT1011
 -  Adafruit Feather RP2040
 -  Adafruit Feather STM32F405 Express
 -  Adafruit Feather nRF52840 Express
 -  Adafruit FunHouse
 -  Adafruit Gemma M0
 -  Adafruit Gemma M0 PyCon 2018
 -  Adafruit Grand Central M4 Express
 -  Adafruit Hallowing M4 Express
 -  Adafruit ItsyBitsy M0 Express
 -  Adafruit ItsyBitsy M4 Express
 -  Adafruit ItsyBitsy RP2040
 -  Adafruit ItsyBitsy nRF52840 Express
 -  Adafruit LED Glasses Driver nRF52840
 -  Adafruit Macropad RP2040
 -  Adafruit MagTag
 -  Adafruit Matrix Portal M4
 -  Adafruit Metro ESP32S2
 -  Adafruit Metro M0 Express
 -  Adafruit Metro M4 Airlift Lite
 -  Adafruit Metro M4 Express
 -  Adafruit Metro nRF52840 Express
 -  Adafruit Monster M4SK
 -  Adafruit NeoKey Trinkey M0
 -  Adafruit NeoPixel Trinkey M0
 -  Adafruit ProxLight Trinkey M0
 -  Adafruit PyGamer
 -  Adafruit PyPortal
 -  Adafruit PyPortal Pynt
 -  Adafruit PyPortal Titano
 -  Adafruit PyRuler
 -  Adafruit Pybadge
 -  Adafruit QT Py M0
 -  Adafruit QT Py M0 Haxpress
 -  Adafruit QT Py RP2040
 -  Adafruit QT2040 Trinkey
 -  Adafruit Rotary Trinkey M0
 -  Adafruit Slide Trinkey M0
 -  Adafruit Trellis M4 Express
 -  Adafruit Trinket M0
 -  AloriumTech Evo M51
 -  Arduino MKR Zero
 -  Arduino MKR1300
 -  Arduino Nano 33 BLE
 -  Arduino Nano 33 IoT
 -  Arduino Nano RP2040 Connect
 -  Arduino Zero
 -  Artisense Reference Design RD00
 -  AtelierDuMaker nRF52840 Breakout
 -  BDMICRO VINA-D21
 -  BDMICRO VINA-D51
 -  BLE-SS dev board Multi Sensor
 -  BastBLE
 -  BastWiFi
 -  BlueMicro840
 -  CP Sapling M0
 -  CP Sapling M0 w/ SPI Flash
 -  CP32-M4
 -  Capable Robot Programmable USB Hub
 -  Cedar Grove StringCar M0 Express
 -  Challenger RP2040 WiFi
 -  Circuit Playground Express Digi-Key PyCon 2019
 -  CircuitBrains Basic
 -  CircuitBrains Deluxe
 -  CrumpS2
 -  Cytron Maker Pi RP2040
 -  DynOSSAT-EDU-EPS
 -  DynOSSAT-EDU-OBC
 -  DynaLoRa_USB
 -  ESP 12k NodeMCU
 -  Electronic Cats Bast Pro Mini M0
 -  Electronic Cats CatWAN USBStick
 -  Electronic Cats Hunter Cat NFC
 -  Electronic Cats NFC Copy Cat
 -  Electronut Labs Blip
 -  Electronut Labs Papyr
 -  EncoderPad RP2040
 -  Escornabot Makech
 -  Espruino Pico
 -  Espruino Wifi
 -  Feather ESP32S2 without PSRAM
 -  Feather MIMXRT1011
 -  Feather MIMXRT1062
 -  FeatherS2
 -  FeatherS2 Neo
 -  FeatherS2 PreRelease
 -  Fluff M0
 -  Fomu
 -  Franzininho WIFI w/Wroom
 -  Franzininho WIFI w/Wrover
 -  Gravitech Cucumber M
 -  Gravitech Cucumber MS
 -  Gravitech Cucumber R
 -  Gravitech Cucumber RS
 -  HMI-DevKit-1.1
 -  Hacked Feather M0 Express with 8Mbyte SPI flash
 -  HalloWing M0 Express
 -  HiiBot BlueFi
 -  IMXRT1010-EVK
 -  IkigaiSense Vita nRF52840
 -  J&J Studios datum-Distance
 -  J&J Studios datum-IMU
 -  J&J Studios datum-Light
 -  J&J Studios datum-Weather
 -  Kaluga 1
 -  LILYGO TTGO T8 ESP32-S2 w/Display
 -  LoC BeR M4 base board
 -  MDBT50Q-DB-40
 -  MDBT50Q-RX Dongle
 -  MEOWBIT
 -  MORPHEANS MorphESP-240
 -  MakerDiary nRF52840 MDK
 -  MakerDiary nRF52840 MDK USB Dongle
 -  Makerdiary M60 Keyboard
 -  Makerdiary Pitaya Go
 -  Makerdiary nRF52840 M.2 Developer Kit
 -  Melopero Shake RP2040
 -  Meow Meow
 -  Metro MIMXRT1011
 -  Mini SAM M4
 -  NUCLEO STM32F746
 -  NUCLEO STM32F767
 -  NUCLEO STM32H743
 -  OPENMV-H7 R1
 -  Oak Dev Tech BREAD2040
 -  Oak Dev Tech PixelWing ESP32S2
 -  Open Hardware Summit 2020 Badge
 -  PCA10056 nRF52840-DK
 -  PCA10059 nRF52840 Dongle
 -  PCA10100 nRF52833 Dongle
 -  PYB LR Nano V2
 -  Particle Argon
 -  Particle Boron
 -  Particle Xenon
 -  PewPew 10.2
 -  PewPew 13
 -  PewPew M4
 -  PicoPlanet
 -  Pimoroni Interstate 75
 -  Pimoroni Keybow 2040
 -  Pimoroni PGA2040
 -  Pimoroni Pico LiPo (16MB)
 -  Pimoroni Pico LiPo (4MB)
 -  Pimoroni PicoSystem
 -  Pimoroni Plasma 2040
 -  Pimoroni Tiny 2040
 -  PyCubedv04
 -  PyCubedv04-MRAM
 -  PyCubedv05
 -  PyCubedv05-MRAM
 -  PyKey60
 -  PyboardV1_1
 -  Raspberry Pi Pico
 -  Robo HAT MM1 M4
 -  S2Mini
 -  SAM E54 Xplained Pro
 -  SAM32v26
 -  SPRESENSE
 -  ST STM32F746G Discovery
 -  STM32F411E_DISCO
 -  STM32F412G_DISCO
 -  STM32F4_DISCO
 -  Saola 1 w/Wroom
 -  Saola 1 w/Wrover
 -  Seeeduino Wio Terminal
 -  Seeeduino XIAO
 -  Serpente
 -  Silicognition LLC M4-Shim
 -  Simmel
 -  SparkFun LUMIDrive
 -  SparkFun MicroMod RP2040 Processor
 -  SparkFun MicroMod SAMD51 Processor
 -  SparkFun MicroMod nRF52840 Processor
 -  SparkFun Pro Micro RP2040
 -  SparkFun Pro nRF52840 Mini
 -  SparkFun Qwiic Micro
 -  SparkFun RedBoard Turbo
 -  SparkFun SAMD21 Dev Breakout
 -  SparkFun SAMD21 Mini Breakout
 -  SparkFun STM32 MicroMod Processor
 -  SparkFun Thing Plus - RP2040
 -  SparkFun Thing Plus - SAMD51
 -  Sprite_v2b
 -  StackRduino M0 PRO
 -  TG-Boards' Datalore IP M4
 -  TG-Watch
 -  THUNDERPACK_v11
 -  THUNDERPACK_v12
 -  Targett Module Clip w/Wroom
 -  Targett Module Clip w/Wrover
 -  Teensy 4.0
 -  Teensy 4.1
 -  Teknikio Bluebird
 -  The Open Book Feather
 -  TinkeringTech ScoutMakes Azul
 -  TinyS2
 -  Trinket M0 Haxpress
 -  UARTLogger II
 -  WarmBit BluePixel nRF52840
 -  Winterbloom Big Honking Button
 -  Winterbloom Sol
 -  XinaBox CC03
 -  XinaBox CS11
 -  iMX RT 1020 EVK
 -  iMX RT 1060 EVK
 -  keithp.com snekboard
 -  micro:bit v2
 -  microS2
 -  nanoESP32-S2  w/Wrover
 -  nanoESP32-S2 w/Wroom
 -  ndGarage[n°] Bit6: FeatherSnow-v2
 -  ndGarage[n°]Bit6:FeatherSnow
 -  nice!nano
 -  senseBox MCU
 -  stm32f411ce-blackpill
 -  stm32f411ce-blackpill-with-flash
 -  uChip
 -  uGame10
 
 
- 
struct.calcsize(fmt: str) → int 
返回存储给定 fmt 所需的字节数。
- 
struct.pack(fmt: str, *values: Any) → bytes 
根据格式字符串 fmt 打包值。返回值是对值进行编码的字节对象。
- 
struct.pack_into(fmt: str, buffer: _typing.WriteableBuffer, offset: int, *values: Any) → None 
根据格式字符串 fmt 将值打包到从 offset 开始的缓冲区中。偏移量可能是负数,从缓冲区的末尾开始计数。
- 
struct.unpack(fmt: str, data: _typing.ReadableBuffer) → Tuple[Any, Ellipsis] 
根据格式字符串 fmt 从数据中解压。返回值是解包值的元组。缓冲区大小必须与格式要求的大小相匹配。
- 
struct.unpack_from(fmt: str, data: _typing.ReadableBuffer, offset: int = 0) → Tuple[Any, Ellipsis] 
根据格式字符串 fmt 从 offset 开始的数据中解包。偏移量可能是负数,从缓冲区的末尾开始计数。返回值是解包值的元组。缓冲区大小必须至少与表单所需的大小一样大。